大数减法 麻烦帮忙找一下BUG?

大数减法,问题有可能处在后面,麻烦帮忙找一下bug!谢谢!

#include
#include
#include
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char argv[]) {
char a[50],b[50];
int la,lb,lc,m[50]={0},n[50]={0},i,x,g;
scanf("%s%s",a,b);
la=strlen(a);
lb=strlen(b);
int j=0,q=0;
for(int i=la-1;i>=0;i--){
m[j]=a[i]-'0';
j++;
}
for(int i=lb-1;i>=0;i--){
n[q]=b[i]-'0';
q++;
}
/*for(int i=0;i<la;i++){
printf("%d",m[i]);
}
printf("\n");
for(int i=0;i<lb;i++){
printf("%d",n[i]);
}
/

if(la>lb){
    g=1;
    lc=la; 
}
if(la<lb){
    g=-1;
    lc=lb;
}
if(la=lb){
    lc=la;
    if(strcmp(a,b)>=0){
        g=1;
    }else{
        g=-1;
    }

}
if(g==1){
    for(int i=0;i<lc;i++){
    if((m[i]-n[i])<0){
        m[i]=m[i]+10-n[i];
        m[i+1]--;
    }else{
        m[i]=m[i]-n[i];
    }
}
} 
if(g==-1){
    for(int i=0;i<lc;i++){
    if((n[i]-m[i])<0){
        m[i]=n[i]+10-m[i];
        n[i+1]--;

    }else{
        m[i]=n[i]-m[i];
    }
}

}

for(i=49;i>=0;i--){
    if(m[i]!=0) 
    break;
}
for( ;i>=0;i--){
    printf("%d",m[i]);
}

return 0;

}

找到了,发现等于号写成赋值等号了。以下应为正确代码,以作参考。
#include
#include
#include
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char argv[]) {
char a[50],b[50];
int la,lb,lc,m[50]={0},n[50]={0},i,x,g;
scanf("%s%s",a,b);
la=strlen(a);
lb=strlen(b);
int j=0,q=0;
for(int i=la-1;i>=0;i--){
m[j]=a[i]-'0';
j++;
}
for(int i=lb-1;i>=0;i--){
n[q]=b[i]-'0';
q++;
}
/*for(int i=0;i<la;i++){
printf("%d",m[i]);
}
printf("\n");
for(int i=0;i<lb;i++){
printf("%d",n[i]);
}
/

if(la>lb){
    g=1;
    lc=la; 
}
if(la<lb){
    g=-1;
    lc=lb;
}
if(la==lb){
    lc=la;
    if(strcmp(a,b)>=0){
        g=1;
    }else{
        g=-1;
    }

}
if(g==1){
    for(int i=0;i<lc;i++){
    if((m[i]-n[i])<0){
        m[i]=m[i]+10-n[i];
        m[i+1]--;
    }else{
        m[i]=m[i]-n[i];
    }
}
} 
if(g==-1){
    for(int i=0;i<lc;i++){
    if((n[i]-m[i])<0){
        m[i]=n[i]+10-m[i];
        n[i+1]--;

    }else{
        m[i]=n[i]-m[i];
    }
}

}

for(i=49;i>=0;i--){
    if(m[i]!=0) 
    break;
}
for( ;i>=0;i--){
    printf("%d",m[i]);
}

return 0;

}