問題:
實現30位以內的大整數的加法
#include #include int main()
,b[50]=,c[50]=,m,n,q,k,i;
printf("請輸入兩個大整數並以回車鍵表示輸入結束:\n");
gets(s1);//獲得字串形式的大整數
gets(s2);
m=strlen(s1);//m等於字串的長度
n=strlen(s2);
if(m=0;i--)
//考慮到兩數相加會出現大於10要進製的情況
} printf("兩大整數相加結果是:\n");
if(c[0]!=0)//因為之前防止多出來乙個所以增加了乙個,要保證增加出來的那個不要輸出0;
else
printf("\n");
return 0;
}
執行結果:
大整數加法
include include include include define debug void plus char char char int is valid char void reverse char int main int argc,char argv up loop 0 strcpy...
大整數加法
方法 這裡用了資料結構棧,實際上棧更方便實現高精度加法。步驟 1 第乙個資料加數按輸入順序 高位到低位 入棧1。此時棧頂為最低位 2 第二個資料加數按輸入順序 高位到低位 入棧2。此時棧頂為最低位 3 將棧1 棧2均pop出棧頂做加法,並考慮進製,結果入棧3,這時棧3正好是低位入棧。4 處理多餘的棧...
大整數加法
include include include define max len 200 int an1 max len 10 int an2 max len 10 char szline1 max len 10 char szline2 max len 10 int main bool bstarto...