同時考慮到相減之後為負數的情況和相減之後為0的情況
#include #include int main()
,bb[100]=,cc[100];
char a[100],b[100];
scanf("%s %s",a,b);
int m,n,len,flage1=0;
/*flage1代表相減之後是否為負數
代表用前邊那個數減後邊那個數還是用後邊那個數減去前邊那個數
*/m = strlen(a);
n = strlen(b);
int i;
/* 將大數字串轉化為整數並反轉,單個儲存在陣列之中
*/ for(i = 0; i < m; i ++)
for(i = 0; i < n; i ++)
/*判斷第乙個數與第二個數的大小,len取較大的乙個數的長度
如果前面那個數較大,則flage1 = 0;如果後面的那個數較大,則flage1 = 1;
*/ if(m > n)
else if(m == n)
if(aa[i] < bb[i])
}} else
if(flage1 == 0)
}} if(flage1 == 1)
}} //判斷相減之後是否等於0 。。。例如:1111-1111=0000 經上邊陣列計算之後就會有4個0
int s = 0;
for(i = 0; i < len; i ++) }
if(s == 0) //s = 0就代表相減之後每個陣列都儲存的是 0,然後就輸出乙個0就行
if(s != 0)
printf("\n");
} if(flage1 == 1)
printf("\n");
} }return 0;
}
大數相減(不支援負數)
define crt secure no warnings include include include define n 1000 此處可以改輸入大資料的位數 struct add number typedef struct add number a n a n node a n head,in...
C語言 位址相減
舉乙個小例子說明一下,c中位址相減的結果是比較有趣的。例 int a 3 int s1,s2 char t1,t2 a 0 1 a 1 2 a 2 3 s1 a s2 a 2 s2 s1 t1 char a t2 char a 2 t2 t1 解析 s2 s1 2 t2 t1 8 why?c語言中的...
大數問題 相乘,相減,相加 C 實現
c 自帶的long long型別表示的最大值是9223372036854775807 19位 如果有兩個超過這個範圍的數進行運算,就不能使用c 編譯器自帶的 了。我們把這種大數用c 裡面的string型別進行處理,處理過程中要注意進製 借位 字元轉數字的問題。string add string st...