c/c++大整數(shù)乘法

Description

求兩個(gè)不超過200位的非負(fù)整數(shù)的積。

Input

有兩行,每行是一個(gè)不超過200位的非負(fù)整數(shù),沒有多余的前導(dǎo)0。

Output

一行,即相乘后的結(jié)果。結(jié)果里不能有多余的前導(dǎo)0,即如果結(jié)果是342,那么就不能輸出為0342。

Sample Input

12345678900

98765432100

Sample Output

1219326311126352690000

代碼:

#include<stdio.h>

#include<string.h>

int main(int argc, char *argv[])

{

int a[200],b[200],c[400]={0},i,j,m,l,k,t,h;

char aa[200],bb[200];

scanf("%s%s",&aa,&bb);

l=strlen(aa);

t=strlen(bb);

for(m=0,j=l-1;j>=0;j--,m++)

a[m]=aa[j]-'0';

for(m=0,j=t-1;j>=0;j--,m++)

b[m]=bb[j]-'0';

//上面的處理和大整數(shù)加法一樣!這里就不多說了!

for(i=0;i<l;i++)

? ? for(j=0;j<t;j++)

? ? ? ? c[i+j]+=a[i]*b[j];????????//理解這里是關(guān)鍵!

//同樣這里是把超過10的進(jìn)位??!

for(i=0;i<l+t;i++)

if(c[i]>=10)

{

c[i+1]=c[i+1]+c[i]/10;

c[i]%=10;

}

for(i=l+t-1;i>=0;i--)

if(c[i]==0)continue;

//上面是把有前導(dǎo)0的數(shù)去掉!

else {k=i;break;}

if(i == -1)printf("0");

for(i=k;i>=0;i--)

printf("%d",c[i]);

printf("\n");

return 0;

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 計(jì)算機(jī)二級C語言上機(jī)題庫(南開版) 1.m個(gè)人的成績存放在score數(shù)組中,請編寫函數(shù)fun,它的功能是:將低于平...
    MrSunbeam閱讀 6,617評論 1 42
  • 背景 一年多以前我在知乎上答了有關(guān)LeetCode的問題, 分享了一些自己做題目的經(jīng)驗(yàn)。 張土汪:刷leetcod...
    土汪閱讀 12,921評論 0 33
  • Java經(jīng)典問題算法大全 /*【程序1】 題目:古典問題:有一對兔子,從出生后第3個(gè)月起每個(gè)月都生一對兔子,小兔子...
    趙宇_阿特奇閱讀 2,077評論 0 2
  • 中秋快樂 好像沒什么,還是一樣的過日子,再孤獨(dú),內(nèi)心一片海,生活也不會(huì)荒蕪。 少一些熱鬧,多一些平靜,日子也照過。
    陳小胖啊閱讀 158評論 0 0
  • 爸爸,我們又要交錢啦,360元。文心小聲說。 哦,沒事,爸爸一定給你準(zhǔn)備好。 總是不斷地交錢。媽媽埋怨。 爸爸說:...
    夏花靜秋閱讀 385評論 2 1

友情鏈接更多精彩內(nèi)容