高精度加法
2025-05-25 10:55:27
发布于:上海
2阅读
0回复
0点赞
也是非常简单
#include<bits/stdc++.h>
using namespace std;
int a[10100],b[10100],c[10100];
int main(){
string s1 , s2;
cin>>s1>>s2;//用字符串存储较大的数据
int len = max(s1.size(),s2.size())-1;//定位数
for(int i=0;i<s1.size();i++) a[i]=s1[s1.size()-i-1]-'0';//将s1字符串每一位倒着存入到a数组
for(int i=0;i<s2.size();i++) b[i]=s2[s2.size()-i-1]-'0';//将s2字符串每一位倒着存入到a数组
for(int i=0;i<=len;i++){
c[i]+=a[i]+b[i];
c[i+1]+=c[i]/10;//若有进位把1加到c[i+1]
c[i]%=10;//在对留在c[i]的数处理
}
if(c[len+1]) len++;
for(int i=len;i>=0;i--) cout<<c[i];
return 0;
}
这里空空如也
有帮助,赞一个