小结:
因为题目比较简单吧,第一次读题、编码、AC在一个小时内搞定,感觉不错
代码:
#include <stdio.h> #include <stdlib.h> const int MAXN = 110; int main(int argc, char *argv[]) { char s[MAXN]; int an1[MAXN], sum[MAXN]; int i,j; memset(sum,0,sizeof(sum)); while (scanf("%s",s) ){ if (s[0] == '0') break; int n = strlen(s); memset(an1,0,sizeof(an1)); for ( i = 0; i < n; i++){ an1[i] = s[n-i-1] - '0';//将大数据倒放在数组里,相加时容易处理进位 sum[i] += an1[i]; //输入的同时每位就加起来 最后一起处理 } } for (i = 0; i < MAXN; i++){ if(sum[i] >= 10){ //一开始 自己 = 没加,小心啊 sum[i+1] += sum[i]/10; sum[i] %= 10; } } for (i = MAXN-1; i >= 0; i--) // 消去前导为0的部分 if (sum[i]) break; for (j = i; j >= 0; j--) printf("%d",sum[j]); printf("\n"); return 0; }