果然恶心,用字符串输出才过得了... #include<stdio.h> #define MAX 1000000 char a[2][MAX], sum[MAX]; int main() { int n, i; scanf("%d", &n); for(i=0; i<n; i++) { scanf("%d", &a[0][i]); scanf("%d", &a[1][i]); } bool flag=false; for(i=n-1; i>=0; i--) { sum[i]=a[0][i]+a[1][i]; if(flag) { sum[i]++; flag=false; } if(sum[i]>9) { sum[i]-=10; flag=true; } sum[i]+=48; } sum[n]='/0'; printf("%s/n",sum); return 0; }