dalao帮我看一眼哪错了
#include<bits/stdc++.h>
using namespace std;
int main()
{
char e[50000],f[50000],g[50000];
int a[5000]={0},b[5000]={0},c[5000]={0},la,lb,lc,j;
gets(e);
gets(f);
la=strlen(e);
lb=strlen(f);
if(la<lb||(la==lb&&strcmp(e,f)<0))
{
strcpy(g,e);
strcpy(e,f);
strcpy(f,g);
cout<<"-";
}
la=strlen(e);
lb=strlen(f);
for(int i=0;i<=la-1;i++)a[la-i]=e[i]-'0';
for(int i=0;i<=lb-1;i++)b[lb-i]=f[i]-'0';
lc=1;
while(lc<=la||lc<=lb)
{
if (a[lc]<b[lc])
{
a[lc+1]--;
a[lc]+=10;
}
c[lc]=a[lc]-b[lc];
lc++;
}
int i=lb+1;
while(i<la)
{
c[i]=a[i];
i++;
}
lc=i;
while(c[lc]==0&&lc>1)lc--;
for(int i=lc;i>=1;i--)
cout<<c[i];
cout<<endl;
return 0;
}
求教!!