为什么不行啊
2025-03-23 02:32:33
发布于:北京
4阅读
0回复
0点赞
代码有点*山()但是感觉能实现功能,为什么不行呢
#include<bits/stdc++.h>
using namespace std;
string add(string n,string m){
int len = max(n.length(),m.length());
if (n[0]-'0'+m[0]-'0'>=10)len++;
while (m.length()<len)m='0'+m;
while (n.length()<len)n='0'+n;
int carry =0;
string s(len, '0');
for (int i=len-1 ; i>=0 ; i--){
int a = n[i]-'0',b = m[i]-'0';
int j = a+b+carry;
carry=j/10;
s[i]=j%10+'0';
//cout << carry << '-' << a << ' '<< b <<' '<< j << endl;
}
int k = 0;
if (carry > 0) {
s = to_string(carry) + s;
}
if (s[0]=='0') k = 1;
for (int i = k;i<=len-1; i++){
cout << s[i];
}
return s;
}
int main(){
string a,b;
cin >> a >> b;
add(a,b);
return 0;
}
这里空空如也
有帮助,赞一个