国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

基礎(chǔ)練習(xí) 高精度加法

2019-11-11 03:48:42
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

問(wèn)題描述   輸入兩個(gè)整數(shù)a和b,輸出這兩個(gè)整數(shù)的和。a和b都不超過(guò)100位。 算法描述   由于a和b都比較大,所以不能直接使用語(yǔ)言中的標(biāo)準(zhǔn)數(shù)據(jù)類型來(lái)存儲(chǔ)。對(duì)于這種問(wèn)題,一般使用數(shù)組來(lái)處理。   定義一個(gè)數(shù)組A,A[0]用于存儲(chǔ)a的個(gè)位,A[1]用于存儲(chǔ)a的十位,依此類推。同樣可以用一個(gè)數(shù)組B來(lái)存儲(chǔ)b。   計(jì)算c = a + b的時(shí)候,首先將A[0]與B[0]相加,如果有進(jìn)位產(chǎn)生,則把進(jìn)位(即和的十位數(shù))存入r,把和的個(gè)位數(shù)存入C[0],即C[0]等于(A[0]+B[0])%10。然后計(jì)算A[1]與B[1]相加,這時(shí)還應(yīng)將低位進(jìn)上來(lái)的值r也加起來(lái),即C[1]應(yīng)該是A[1]、B[1]和r三個(gè)數(shù)的和.如果又有進(jìn)位產(chǎn)生,則仍可將新的進(jìn)位存入到r中,和的個(gè)位存到C[1]中。依此類推,即可求出C的所有位。   最后將C輸出即可。 輸入格式   輸入包括兩行,第一行為一個(gè)非負(fù)整數(shù)a,第二行為一個(gè)非負(fù)整數(shù)b。兩個(gè)整數(shù)都不超過(guò)100位,兩數(shù)的最高位都不是0。 輸出格式   輸出一行,表示a + b的值。 樣例輸入 20100122201001221234567890 2010012220100122 樣例輸出 20100122203011233454668012 代碼分享:

#include<stdio.h>#include<string.h>int main(){ char A[100],B[100],C[100],D[100]; int S[101]={0},r,k,s,m; int i=0,j=0,count=0; memset(A,0,sizeof(A));//先將三個(gè)整型數(shù)組全部賦值為0 memset(B,0,sizeof(B)); memset(S,0,sizeof(S)); scanf("%s%s",C,D);//先用字符數(shù)組過(guò)渡存儲(chǔ) int len=strlen(C)>strlen(D)?strlen(C):strlen(D);//計(jì)算兩個(gè)加數(shù)最長(zhǎng)的,存到len中 for(i=0,j=strlen(C)-1;j>=0;i++,j--){ A[i]=C[j]-'0'; } for(i=0,j=strlen(D)-1;j>=0;i++,j--){ B[i]=D[j]-'0'; }//將所有字符型轉(zhuǎn)換為整形 for(i=0;i<len;i++){ S[i]+=A[i]+B[i]; if(S[len-1]>=10){//如果最高位的數(shù)字大于10.表示需要進(jìn)位處理 len++;//len就是結(jié)果數(shù)組中有效的長(zhǎng)度 } S[i+1]+=S[i]/10; S[i]%=10;//老套的進(jìn)位處理 } for(m=len-1;m>=0;m--)//輸出時(shí)先輸出高位,即在數(shù)組中下標(biāo)較大的數(shù)字
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 康定县| 奇台县| 墨脱县| 通河县| 连云港市| 静安区| 满洲里市| 安多县| 繁峙县| 平舆县| 镇雄县| 怀远县| 文化| 多伦县| 抚松县| 鹰潭市| 东乡| 岫岩| 温宿县| 郎溪县| 会宁县| 施甸县| 和平区| 靖宇县| 准格尔旗| 嫩江县| 宁波市| 新绛县| 乌审旗| 吉林省| 海兴县| 诸暨市| 特克斯县| 大丰市| 富川| 江油市| 泊头市| 白城市| 吴江市| 越西县| 娱乐|