str没有赋初始值,最后应该是c[i]+='0'
by FurukawaNagisa @ 2023-12-02 14:57:37
`str+=c[i]-'0';`
by jason_sun @ 2023-12-02 14:57:42
把
```cpp
for(int i=len-1;i>=0;i--){
str+=c[i]-'0';
}
```
改成
```cpp
for(int i=len-1;i>=0;i--){
str+=char(c[i]+'0');
}
```
by Agnehc @ 2023-12-02 14:58:48
```cpp
#include <bits/stdc++.h>
using namespace std;
string a, b;
char aa[1000], bb[1000], c[10005];
string f(string a, string b)
{
string str = "";
int le = a.size();
for (int i = 0; i < le; i++)
{
aa[le - 1 - i] = a[i] - '0';
}
int en = b.size();
for (int i = 0; i < en; i++)
{
bb[en - 1 - i] = b[i] - '0';
}
int len = max(le, en);
for (int i = 0; i < len; i++)
{
c[i] += aa[i] + bb[i];
if (c[i] >= 10)
{
c[i + 1]++;
c[i] -= 10;
}
}
if (c[len] > 0)
{
len++;
}
for (int i = len - 1; i >= 0; i--)
{
str += c[i] + '0';
}
return str;
}
int main()
{
cin >> a >> b;
cout << f(a, b);
}
```
最后应该是```str += c[i] + '0';```
by ____TAT____ @ 2023-12-02 14:59:44
shift!
原来这么简单被我给想复杂了
by lizhuorong @ 2023-12-09 08:08:21