#include<stdio.h>
int main(){
char a[200] ,b[200];
while(scanf("%s",a) != EOF){
int answer[202] = {0};
getchar();
scanf("%s",b);
int i,n, j =0 , k ;
for(i = 0; a[i+1] !=0; ){
i++;
}
for(n = 0; b[n+1] !=0;){
n++;
}
for(;(i >= 0) || (n >= 0); i--, n--, j++){
if(n < 0) {
answer[j] += (a[i] - 48);
}
else if(i < 0) {
answer[j] += (b[n] - 48) ;
}
else{
answer[j] += (a[i] + b[n] - 48 - 48) ;
}
k = j;
if(answer[j] >= 10){
answer[j + 1] = (answer[j] / 10);
answer[j] = (answer[j] % 10);
k++ ;
}
}
for(; k >= 0; k--){
printf("%d",answer[k]);
}
printf("\n");
}
return 0;
}
题目是200位以内的大整数加法
请问 getchar()是为什么出现在那个位置,及为什么会有
else{
answer[j] += (a[i] + b[n] - 48 - 48) ;
这种-48-48为什么要减去48