#include<bits/stdc++.h>
using namespace std;
/*高精度加法a+b
1)使用两个字符串,输入 a和b
2)将字符串a和b,倒序存入两个整型数组x和y中
3)按照从低到高的顺序,按位相加,处理进位问题
4)结果倒序输出
*/
string a,b;
int x[205],y[205],z[205];
int main(){
int lena,lenb,lenc,tmp=0;
//1)
cin>>a>>b;
lena=a.size();
lenb=b.size();
//2)
for(int i=0;i<lena;i++){
x[i]=a[lena-1-i]-'0';
}
for(int i=0;i<lenb;i++){
y[i]=b[lenb-1-i]-'0';
}
//3)
lenc=max(lena,lenb);
for(int i=0;i<lenc;i++){
z[i]=x[i]+y[i]+tmp;
tmp=z[i]/10;
z[i]%=10;
}
z[lenc]=tmp;
if(z[lenc]==0) lenc--;
//4)
for(int i=lenc;i>=0;i--){
cout<<z[i];
}
return 0;
}
评论区