问题 : 大数-加法运算
题目描述
请计算两个整数相加(数的范围:0 <= num < 10 ^ 100)
输入
两个整数
输出
一个整数
样例输入
1000000
1000000
样例输出
2000000
1 #include<stdio.h> 2 #include<string.h> 3 #define M 100000 4 int Inter_Sum[M]; 5 void fun(char str1[],char str2[]){ 6 int t,m=0,i=strlen(str1); 7 int p=strlen(str2)-1; 8 int k=0; 9 while(i--){ 10 if(p>=0) 11 t=(str1[i]-48)+(str2[p]-48)+m; 12 else t=(str1[i]-48)+m; 13 if(t<10){ 14 Inter_Sum[k]=t; 15 m=0; 16 }else{ 17 Inter_Sum[k]=t%10; 18 m=t/10; 19 } 20 k++; 21 p--; 22 if(i==0&&m!=0)Inter_Sum[k++]=m; 23 } 24 for(int j=k-1;j>=0;j--){ 25 printf("%d",Inter_Sum[j]); 26 } 27 } 28 int main(){ 29 char str1[M]; 30 char str2[M]; 31 memset(str2,‘0‘,sizeof(str2)); 32 int i=0,j=0; 33 scanf("%s %s",str1,str2); 34 str1[strlen(str1)]=‘\0‘; 35 str2[strlen(str2)]=‘\0‘; 36 if(strlen(str1)>=strlen(str2)) 37 fun(str1,str2); 38 else fun(str2,str1); 39 return 0; 40 }