主要应该是30-33行有问题
#include<bits/stdc++.h>
using namespace std;
bool f(string a,string b){
if(a.length()!=b.length())return a.length()>b.length();
for(int i=0;i<(int)a.length();i++){
if(a[i]!=b[i])return a[i]>b[i];
}
return 1;
}
int main(){
string s1,s2;
cin>>s1>>s2;
int la=s1.length();
int a[505]={0},b[505]={0},c[505]={0,0,0};
if(f(s1,s2)==false){
cout<<'-';
for(int i=0;i<la;++i){
b[la-i-1]=s1[i]-'0';
a[la-i-1]=s2[i]-'0';
}
}
else{
for(int i=0;i<la;++i){
a[la-i-1]=s1[i]-'0';
b[la-i-1]=s2[i]-'0';
}
}
for(int i=0;i<la;i++){
c[la-i-1]+=a[i]-b[i];
if(c[la-i-1]<0){
c[la-i-2]--;
c[la-i-1]+=10;
}
}
int n=0;
while(c[n]==0)n++;
for(int i=n;i<la;i++){
cout<<c[i]<<" ";
}
if(la==0)cout<<0;
return 0;
}
爸爸们求求了,可以给关注