您的位置:首页 > 其它

大数加法

2017-04-10 19:09 246 查看
任意找两个数字输入,得出两数之和;

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
string add(string a,string b)
{
if(a.size()<b.size())
swap(a,b);//交换
int i,j,k=0;
for(i=a.size()-1,j=b.size()-1;i>=0;i--,j--)
{//
a[i]='0'+(a[i]-'0')+(j>=0?b[j]-'0':0)+k;
k=(a[i]-'0')/10;//大于10+1小于10-1
a[i]='0'+(a[i]-'0')%10;
}
if(k>0)
a='1'+a;
return a;
}
int main()
{
string a,b;
while(cin>>a>>b)
{
cout<<add(a,b)<<endl;
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  string namespace