http://poj.grids.cn/problem/2981/ 这道题要注意 0 0 情况;开始时wa就因为这个了 #include<cstdio> #include<cstring> int main() { char a[201]={0},b[201]={0}; scanf("%s %s",a,b); int lena=strlen(a); int lenb=strlen(b); int a1[201]={0}; int a2[201]={0}; for(int i=0;i<lena;i++) a1[i]=a[lena-i-1]-'0'; for(int i=0;i<lenb;i++) a2[i]=b[lenb-i-1]-'0'; for(int i=0;i<201;i++) { a1[i]+=a2[i]; if(a1[i]>9) { a1[i]-=10; a1[i+1]++; } } int i=200; while(a1[i]==0&&i>=0) i--; if(i<0) printf("0"); ///判断0 0情况 else while(i>=0) printf("%d",a1[i--]); printf("/n"); return 0; }