#include<stdio.h>
#include<string.h>
int main()
{
char s1[1003],s2[1003];
int a[1003]={0},b[1003]={0},sum[1003]={0};
int i,j,len1=0,len2=0,len_max,k=0,flag=0;
gets(s1);
gets(s2);
len1=strlen(s1);
len2=strlen(s2);
if(len1>len2) len_max=len1;
else len_max=len2;
for(i=0,j=len1-1;j>=0;i++,j--) a[i]=s1[j]-'0';
for(i=0,j=len2-1;j>=0;i++,j--) b[i]=s2[j]-'0';
for(i=0,j=0;i<=len_max||j<=len_max;i++,j++)
{
if(i>len1-1) a[i]=0;
else if(j>len2-1) b[j]=0;
if(a[i]+b[j]>=10)
{
sum[i+1]++;
sum[i]+=a[i]+b[i]-10;
}
else sum[i]+=a[i]+b[j];
}
if(sum[len_max]==1) printf("1");
else
for(i=len_max-1;sum[i]==0;i--)
if(i==0) printf("0");
for(;i>=0;i--)
printf("%d",sum[i]);
return 0;
}
for (i = 0; i < len_max; i++)
{
sum[i] += a[i] + b[i];
if (sum[i] >= 10)
{
sum[i + 1]++;
sum[i] -= 10;
}
}
if (sum[i] == 0)
i--;
for (; i >= 0; i--)
printf("%d", sum[i]);
这个进位的时候没有考虑进位后,前一位的进位