大数相加,两个大数

// Problem#: 7498 // Submission#: 1921005 // The source code is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License // URI: http://creativecommons.org/licenses/by-nc-sa/3.0/ // All copyright reserved by informatic Lab of Sun Yat-sen University #include<stdio.h> #include<string.h> int main(){ char a[200],b[200]; while(scanf("%s %s",a,b)!=EOF){ int lofa,lofb; lofa=strlen(a); lofb=strlen(b); char atemp[lofa+2],btemp[lofb+2]; int i; for(i=lofa;i>0;i--){ atemp[i]=a[i-1]; } atemp[i]='0'; for(i=lofb;i>0;i--){ btemp[i]=b[i-1]; } btemp[i]='0'; int temp; if(lofa>=lofb){ i=0; while(i<lofb){ temp=btemp[lofb-i]+atemp[lofa-i]-48-48; if(temp>=10){ atemp[lofa-i]=temp-10+48; atemp[lofa-i-1]=atemp[lofa-i-1]+1; } else{ atemp[lofa-i]=temp+48; } i++; } temp=atemp[lofa-i]-48; while(i<lofa  && temp>=10){ atemp[lofa-i]=temp-10+48; atemp[lofa-i-1]=atemp[lofa-i-1]+1; i++; temp=atemp[lofa-i]-48; } i=0; while(atemp[i]=='0'){ i++; } if(i==lofa+1){ printf("0\n"); } else{ for(;i<lofa;i++){ printf("%c",atemp[i]); } printf("%c\n",atemp[i]); } } else{ i=0; while(i<lofa){ temp=btemp[lofb-i]+atemp[lofa-i]-48-48; if(temp>=10){ btemp[lofb-i]=temp-10+48; btemp[lofb-i-1]=btemp[lofb-i-1]+1; } else{ btemp[lofb-i]=temp+48; } i++; } temp=btemp[lofb-i]-48; while(i<lofb  && temp>=10){ btemp[lofb-i]=temp-10+48; btemp[lofb-i-1]=btemp[lofb-i-1]+1; i++; temp=btemp[lofb-i]-48; } if(btemp[0]!='0'){ printf("%s\n",btemp); } else{ for(i=1;i<lofb;i++){ printf("%c",btemp[i]); } printf("%c\n",btemp[i]); } } } return 0; }                                               

相关文章

自1998年我国取消了福利分房的政策后,房地产市场迅速开展蓬...
文章目录获取数据查看数据结构获取数据下载数据可以直接通过...
网上商城系统MySql数据库设计
26个来源的气象数据获取代码
在进入21世纪以来,中国电信业告别了20世纪最后阶段的高速发...