#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
#include<vector>
#include<set>
#include<map>
#include<queue>
#include<cmath>
using namespace std;
int main()
{
char a1[1000],a2[1000];
int a[1000];
int b[1000];
int c[1000];
while(cin>>a1>>a2){
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
int lena = strlen(a1);
int lenb = strlen(a2);
for(int i = 0; i < lena; i ++)
a[lena - i] = a1[i] - 48;
for(int i = 0; i < lenb; i ++)
b[lenb - i] = a2[i] - 48;
int len = 1;
int x = 0;
while(len <= lena || len <= lenb)
{
c[len] = a[len] + b[len] + x;
x = c[len]/10;
c[len] %= 10;
len++;
}
c[len] = x;
if(c[len]==0)len--;
for(int i = len; i >= 1; i --)
cout<<c[i];
cout<<endl;
}
return 0;
}
高精度加法
注意进位及细节问题