a-b高精度 请问这波犯了什么错(bushi)
#include<bits/stdc++.h>
using namespace std;
int main(){
char s1[505],s2[505];
int lena=0,lenb=0,lenc=0,a[505],b[505],c[505],x=0;
cin>>s1>>s2;
lena=strlen(s1);
lenb=strlen(s2);
for (int i=0;i<lena;i++){
a[lena-i]=s1[i]-48;
}
for (int i=0;i<lenb;i++){
b[lenb-i]=s2[i]-48;
}
if(lena>lenb){
lenc=lena;
for(int i=1;i<=lenc;i++){
c[i]=a[i]-b[i]-x;
if(c[i]<0){
x=0-c[i];
c[i]+=10;
}else x=0;
}
}
if(lena<lenb){
lenc=lenb;
for(int i=1;i<=lenc;i++){
c[i]=b[i]-a[i]-x;
if(c[i]<0){
x=0-c[i];
c[i]+=10;
}else x=0;
}
}
for(int i=lenc;i>=1;i--){
cout<<c[i];
}
return 0;
}