高精度 A-B Problem

題目:請戳此處

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char s[1001];
int a[1001],b[1001],c[2002],al,bl,cl,i,x=1;
int main()
{gets(s);
 al=strlen(s);
 for (i=1;i<=al;i++)
   a[i]=s[al-i]-'0';
 gets(s);
 bl=strlen(s);
 for (i=1;i<=bl;i++)
   b[i]=s[bl-i]-'0';
 cl=al>bl?al:bl;
 for (i=1;i<=cl;i++) 
   c[i]=a[i]-b[i];
 for (i=1;i<cl;i++)
    if (c[i]<0){
     c[i]=c[i]+10;
     c[i+1]=c[i+1]-1;
   }
 for (i=cl;i>0;i--){
   if (c[i]!=0) x=0;
   if (x==0) printf("%d",c[i]);
 }
 if (x==1) printf("0");
 puts("");
 system("pause");
 return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章