思想:采用两个字符串进行输入 在把他们颠倒转存在int的数组内 对两数组进行相加 进位处理 颠倒转存到另一个字符数组内
最后输出字符数组即可
#include<stdio.h> #include<string.h> int a[205],b[205]; char ia[205],ib[205]; int main() { int t; scanf("%d",&t); while(t--) { memset(ia,sizeof(ia)); memset(ib,sizeof(ib)); memset(a,sizeof(a)); memset(b,sizeof(b)); scanf("%s%s",ia,ib); int alen=strlen(ia); int blen=strlen(ib); int i=alen-1,k=0; while(i>=0) a[k++]=ia[i--]-'0'; i=blen-1,k=0; while(i>=0) b[k++]=ib[i--]-'0'; int d=0; k=alen>blen?alen:blen; i=0; while(i<k) { b[i]+=a[i]+d; d=b[i]/10; b[i]%=10; i++; } if(d>0) b[k]+=d; else k--; for(i=k;i>=0;i--) ib[k-i]=b[i]+'0'; ib[k+1]='\0'; printf("%s\n",ib); } return 0; }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。