代码和运行结果如上,为什么会出现这种情况?大家帮我看一下吧!
可以参考以下代码实现大位数加法运算问题
#include<iostream>
using namespace std;
int main (){
//声明字符串,储存大整数
string s1,s2;
int a[1005],b[1005],c[1005];
cin>>s1>>s2;
int len1=s1.size();
int len2=s2.size();
for (int i=0;i<len1;i++){
a[i]=s1[len1-1-i]-'0';
}
for (int i=0;i<len2;i++){
b[i]=s2[len2-1-i]-'0';
}
int len =max (len1,len2);
for (int i=0;i<len;i++){
c[i]=a[i]+b[i]+c[i];
if (c[i]>=10){
c[i+1]++;
c[i]-=10;
}
}
if (c[len]>0){
len++;
}
int loc=len-1;
while (c[loc]==0&&loc>0) loc--;
for (int i=loc;i>=0;i--) cout<<c[i];
return 0;
}