大數相加考慮到資料長度有限,因此採用字串的方式進行計算,還要考慮到進製的問題,看下**:
void big_data_add(char * num1, char * num2)
; int intnum2[max_len] = ;
if (num1 == null || num2 == null)
length1 = strlen(num1);
length2 = strlen(num2);
length = length1 > length2 ? length1 : length2;
for (j = length, i = 0; i < length1; i++, j--)
for (j = length, i = 0; i < length2; i++, j--)
for (i = length; i >= 0; i--)
}printf("the sun of num1 and num2 is: ");
if (intnum1[0] == 0)
}else
}printf("\n");
}
驗證程式:
#include
#include
#define max_len 256
int main()
輸出結果:
兩個大數相加
兩個大數相加,暫時選擇簡單版本,使用兩個正整數相加,直接上 了,不再囉嗦了。include define maxnum 10000 bool inspectcharvalid char value void add char num1,char num2,char result int main i...
兩個大數相加
我們以前計算兩個整數的和,需要定義兩個整型變數來儲存兩個運算元。但是,若這兩個數大到任何整型型別都存放不下時,我們該怎麼來計算它們的和呢?這就是我們今天所討論的話題!解決思路 1 儲存問題 我們可以使用字串來儲存運算元,這樣不管運算元有多長都能放得下。2 計算問題 自定加法時,我們要考慮每一位的相加...
兩個大數相加
前言我們知道在計算機語言中數字的表示範圍都是有限制的,例如我們熟知的int,float,double,long int,long long int等這些型別表示的數字範圍都是限制的。如果我們要對位數達到幾百位,上千位,甚至上萬位大的整數進行計算,這些型別顯然不能實現,因此我們可以用一些演算法來實現這...