日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

codeblocks如何让输出结果 空格_简单讲讲如何实现两个正整数相加,然后输出这个结果...

發(fā)布時(shí)間:2024/7/23 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 codeblocks如何让输出结果 空格_简单讲讲如何实现两个正整数相加,然后输出这个结果... 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

首先吧,兩個(gè)整數(shù)123 456,相加得到579,我們就得輸出579,這個(gè)很容易操作,但是如果是:

1212161596156198115645646886148461554

+??

2671232162176217624372497590415915915029125 ?呢?long ? long long ? long long long?...沒(méi)這個(gè)類型。這數(shù)據(jù)大小沒(méi)辦法以單個(gè)變量?jī)?chǔ)存。當(dāng)出現(xiàn)這種情況時(shí)我們就要考慮數(shù)組模擬運(yùn)算了。

什么是數(shù)組模擬運(yùn)算?可能是把一串長(zhǎng)長(zhǎng)的數(shù)組每一個(gè)位置都當(dāng)做一個(gè)位了,長(zhǎng)度高達(dá)500位的正整數(shù)就可以輕而易舉地儲(chǔ)存進(jìn)超過(guò)500位的數(shù)組當(dāng)中。

比如sum[505]

如何實(shí)現(xiàn)呢?如何參與運(yùn)算呢?耐心看:

————————

我這弄了個(gè)代碼,可能處理方式不算好,但是能用。:

————

#include

int?main(void){

????//數(shù)組模擬兩長(zhǎng)正整數(shù)加法???之和不超過(guò)500位

????int?sum[500]?=?{0};

????char?alp[500]={0};

????scanf("%s",?alp);

????int?k?=?0;

????while(alp[k]!='\0')

????????k++;

????//得到數(shù)據(jù)長(zhǎng)度為k位,最高位在低下標(biāo)(0),低位在高下標(biāo)(k-1)

????int?i?=?0;

????for?(;?i?<?k;i++){

????????sum[k-i-1]?+=?alp[i]?-?'0';

????}

????getchar();??????//兩串?dāng)?shù)中間有個(gè)空格,該操作可以把空格移出輸入緩沖區(qū),不過(guò)沒(méi)有必要

????scanf("%s",?alp);

????k?=?0;

????while(alp[k]!='\0')

????????k++;

????//得到數(shù)據(jù)長(zhǎng)度為k位,最高位在低下標(biāo)(0),低位在高下標(biāo)(k-1)

????i?=?0;

????for?(;?i?<?k;i++){

????????sum[k-i-1]?+=?alp[i]?-?'0';

????}

????//進(jìn)行進(jìn)位操作

????for?(i?=?0;?i?<?k+1;i++){???????//因?yàn)槭羌臃?#xff0c;長(zhǎng)不了多少位,所以隨便取個(gè)范圍上限(k+1)就行了,太大白白浪費(fèi)時(shí)間

????????if(sum[i]>=10){

????????????sum[i?+?1]?+=?sum[i]?/?10;

????????????sum[i]?=?sum[i]?%?10;

????????}

????}

????k?=?499;

????while(sum[k]==0){

????????k--;

????}

????//得到計(jì)算后的值的最高位的下標(biāo),然后開始輸出,輸出到下標(biāo)0

????while(k>=0){

????????printf("%d",?sum[k]);

????????k--;

????}

}

————

就到這吧。

總結(jié)

以上是生活随笔為你收集整理的codeblocks如何让输出结果 空格_简单讲讲如何实现两个正整数相加,然后输出这个结果...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。