原理就是模仿小學的數學加法
因為我們要從個位開始加起 所以需要先倒置儲存 使前面為低位,先進行運算
直接上**
#include
#include
int n,c[
1000
],d[
1000
],sum[
1000];
char a[
1001
],b[
1001];
intmain()
for(j=
0;j)//倒置儲存
int maxlen=lena>lenb?lena:lenb;
for(j=
0;j1;j++
)// printf("s[%d]:後為%4d\n",j,sum[j]);
} j=maxlen+2;
int k;
while
(sum[j]==0
)printf
("\n");
break;}
}if(iprintf
("\n");
}return0;
}
杭電oj刷題 1002(大數加法)
sample input 21 2 112233445566778899 998877665544332211 sample output case 1 1 2 3 case 2 112233445566778899 998877665544332211 1111111111111111110 in...
杭電 1002 大數相加
大數相加可以用字串的方法做,先將需要相加的大數倒過來,然後一一對應相加,如果 i 大於十,則向 i 1 加一,其實就與本來的兩數相加一樣,只不過大數相加是倒過來後在各位相加,最後再將結果倒過來 include includeusing namespace std define max len 100...
杭電ACM 1042 大數階乘 N
原題位址 首先定義乙個足夠長的陣列。拿10000的階乘為例,最後的結果長度是35660位,所以我們定義乙個40000個成員的陣列就可以了。int result 40000 其核心思想就是把計算結果每一位上的數字儲存到乙個陣列成員中,例如 把124儲存至陣列中,儲存結果應該是 result 0 4 r...