两个大整数的加法
两个大整数的加法
Problem Description
计算两个大整数的加法
Input
共2行,每行一个大整数
Output
一行,两个大整数的和.
Sample Input
1122334455 3333333333
Sample Output
4455667788
1 #include<stdio.h> 2 #include<string.h> 3 int main() 4 { 5 char str1[10000],str2[10000]; 6 int a1,a2,a3,i,j,sun1[10000],sun2[10000],sun3[1001],e; 7 gets(str1); 8 gets(str2); 9 a1=strlen(str1); 10 a2=strlen(str2); 11 if(a1>a2)a3=a1; 12 else a3=a2; 13 for(i=a1-1,j=0;i>=0;j++,i--) 14 sun1[j]=str1[i]-'0'; 15 for(i=a2-1,j=0;i>=0;j++,i--) 16 sun2[j]=str2[i]-'0'; 17 sun3[0]=(sun1[0]+sun2[0])%10; 18 e=(sun1[0]+sun2[0])/10; 19 for(i=1;i<=a3;i++) 20 { 21 sun3[i]=(sun1[i]+sun2[i]+e)%10; 22 e=(sun1[i]+sun2[i]+e)/10;} 23 if(sun3[a3]==0); 24 else printf("%d",sun3[a3]); 25 for(i=a3-1;i>=0;i--) 26 printf("%d",sun3[i]); 27 printf("\n"); 28 return 0; 29 }