大整數相加(C 實現)

2021-10-05 05:48:41 字數 843 閱讀 8852

求兩個不超過 200200 位的非負整數的和。

輸入格式

有兩行,每行是乙個不超過 200200 位的非負整數,可能有多餘的前導 00。

輸出格式

一行,即相加後的結果。結果裡不能有多餘的前導 00,即如果結果是 342342,那麼就不能輸出為 03420342。

輸出時每行末尾的多餘空格,不影響答案正確性

樣例輸入複製

22222222222222222222

33333333333333333333

樣例輸出複製

55555555555555555555

用乙個結構體表示這個大數,結構體裡面包含陣列和大數的長度即可,最後模擬即可。

//@author:hairu,wu

//@from:ahut

#include

#include

using

namespace std;

const

int max_n=

300;

struct bign};

bign fun1

(string str)

return ans;

}bign add

(bign x,bign y)

while

(iwhile

(iif(r!=0)

return ans;

}void

print

(bign ans)

while

(j>=0)

cout<}int

main()

如何實現大整數相加

題目 給出兩個很大的整數,要求實現程式求出兩個整數之和。解決思路 建立兩個整型陣列,陣列長度是較大整數的位數 1。把每乙個整數倒序儲存在陣列中,整數的個位存在陣列下標為0的位置,最高存於陣列的尾部。倒序的目的是為了從左到右訪問陣列的習慣 建立結果陣列,結果陣列的長度同樣是較大整數的位數 1,1的目的...

大整數相加

include include include include 思路如下 將兩個字串分別由低位到高位放置到int陣列中 然後每位對齊相加,大於10,本位取餘,高位進1 char bigintadd const char numstr1,const char numstr2 for i len1 i ...

大整數相加

cpp view plain copy code class cpp include include include include 思路如下 將兩個字串分別由低位到高位放置到int陣列中 然後每位對齊相加,大於10,本位取餘,高位進1 char bigintadd const char numst...