示例题目。
This commit is contained in:
71
1001/main.cpp
Normal file
71
1001/main.cpp
Normal file
@@ -0,0 +1,71 @@
|
||||
#include <stdio.h>
|
||||
|
||||
int main() {
|
||||
char a[1000] = {0};
|
||||
char b[1000] = {0};
|
||||
char result[1001] = {0};
|
||||
int a_index = 0, b_index = 0;
|
||||
int result_index = 0;
|
||||
char ch = getchar();
|
||||
while (ch != ' ') {
|
||||
a[a_index] = ch - '0';
|
||||
ch = getchar();
|
||||
a_index++;
|
||||
}
|
||||
|
||||
a_index--;
|
||||
|
||||
ch = getchar();
|
||||
while (ch != '\n' && ch != EOF && ch != ' ') {
|
||||
b[b_index] = ch - '0';
|
||||
ch = getchar();
|
||||
b_index++;
|
||||
}
|
||||
|
||||
b_index--;
|
||||
|
||||
if (a_index >= b_index) {
|
||||
while (a_index >= 0) {
|
||||
int current_digit = a[a_index] + b[b_index] + result[result_index];
|
||||
result[result_index] = current_digit % 10;
|
||||
result[++result_index] = current_digit / 10;
|
||||
a_index--;
|
||||
b_index--;
|
||||
}
|
||||
|
||||
while (a_index >= 0) {
|
||||
int current_digit = a[a_index] + result[result_index];
|
||||
result[result_index] = current_digit % 10;
|
||||
result[++result_index] = current_digit / 10;
|
||||
a_index--;
|
||||
}
|
||||
}
|
||||
else {
|
||||
while (a_index >= 0) {
|
||||
int current_digit = a[a_index] + b[b_index] + result[result_index];
|
||||
result[result_index] = current_digit % 10;
|
||||
result[++result_index] = current_digit / 10;
|
||||
a_index--;
|
||||
b_index--;
|
||||
}
|
||||
|
||||
while (b_index >= 0) {
|
||||
int current_digit = b[b_index] + result[result_index];
|
||||
result[result_index] = current_digit % 10;
|
||||
result[++result_index] = current_digit / 10;
|
||||
b_index--;
|
||||
}
|
||||
}
|
||||
|
||||
if (result[result_index] == 0) {
|
||||
// The hightest digit is carry. There is a possibility that this digit is 0.
|
||||
result_index--;
|
||||
}
|
||||
|
||||
while (result_index >= 0) {
|
||||
printf("%d", result[result_index]);
|
||||
result_index--;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user