#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
string bigsum(string &s1,string &s2);
int main(){
string m,n,sum;
cin>>m;
sum=m;
while(cin>>n&&n!="0"&&m!="0")
sum=bigsum(n,sum);
cout<<sum<<endl;
}
string bigsum(string &s1,string &s2){
int len1=s1.size();
int len2=s2.size();
string s;
int sum=0,jw=0,i=0;
while(len1>0&&len2>0){
sum=s1[len1]-'0'+s2[len2]-'0'+jw;
jw=sum/10;
s[i]=sum%10+'0';
len1--;
len2--;
i++;
}
if(len1==0&&len2==0&&jw>0){
s[i]=jw+'0';
}
else if(len1==0){
for(int j=len2;j>0;j--,i++){
if(jw==0) s[i]=s2[j];
else{
sum=s2[j]-'0'+jw;
if(sum<10){
s[i]=sum+'0';
jw=0;
}
else{
jw=sum/10;
s[i]=sum%10+'0';
}
}
}
}
else if(len2==0){
for(int j=len1;j>0;j--,i++){
if(jw==0) s[i]=s1[j];
else{
sum=s1[j]-'0'+jw;
if(sum<10){
s[i]=sum+'0';
jw=0;
}
else{
jw=sum/10;
s[i]=sum%10+'0';
}
}
}
}
reverse(s.begin(),s.end());
return s;
}
不知道你这个问题是否已经解决, 如果还没有解决的话: