C語言完成兩個大整數(shù)的相加 實現(xiàn)兩個大整數(shù)相加運算的算法?
實現(xiàn)兩個大整數(shù)相加運算的算法?使用長數(shù)組存儲大數(shù),數(shù)組的每個元素存儲大數(shù)的若干位,如num[1000],每個num[i]存儲一位,即1E i×num[i]的和,大數(shù)的乘除是多項式乘除法。當num[i]
實現(xiàn)兩個大整數(shù)相加運算的算法?
使用長數(shù)組存儲大數(shù),數(shù)組的每個元素存儲大數(shù)的若干位,如num[1000],每個num[i]存儲一位,即1E i×num[i]的和,大數(shù)的乘除是多項式乘除法。當num[i]中的數(shù)字大于10時,我們應該注意進位。很容易理解,一個數(shù)字保存在一個數(shù)字中,但它需要大量內(nèi)存。一般來說,我們可以在一個num[i]中保存盡可能多的數(shù)字,而不會溢出四個操作,例如保存20個數(shù)字
~],使用char*或char[]來表示大的數(shù)字。需要循環(huán)和進位標志。一般過程如下:for(int carryflag=0,省略){int digit=STR1[i]-“0”STR2[i]-“0”carryflag carryflag=digit>=10?1:0digit=數(shù)字%10res[i]=數(shù)字“0”}