C語言新手求學路十進位制轉二進位制

2021-10-12 07:39:43 字數 993 閱讀 1695

任務如圖![任務](

轉化思路:「除2求餘,逆序排序」,既就是用十進位制數除以2,可以得到乙個商和餘數;將餘數儲存起來,用商再去除以二,再得到乙個商和餘數,反覆進行,直到商小於1時結束;然後將之前所得的餘數逆序輸出,得到的就是該十進位制數的二進位制寫法。

我們先用while做乙個,這次是用陣列接受餘數,而將該陣列逆置從頭到尾輸出時並沒有改變陣列下標,也就是將a[0]和a[i-1]的數互換,以此類推。

#include

intmain()

printf

("其二進位制數為:");

for(i-=1

;i>=

0;i--

)printf

("%d"

,a[i]);

return0;

}

請輸入乙個十進位制數:9

其二進位制數為:1001

請輸入乙個十進位制數:23

其二進位制數為:10111

第二次時我用for寫乙個,原理類似,稍加修改就是,但是這一次我改變的不是輸出時陣列的順序,改變的是陣列下標,從而實現逆置輸出。

#include

intmain()

printf

("其二進位制數為:");

i=i-1;

j=i;k=i;

//j是代表陣列中最大下標

for(i=

0;i,j--

)for

(i=0

;i<=k;i++

)printf

("%d "

,a[i]);

return0;

}

請輸入乙個十進位制數:9

其二進位制數為:1001

請輸入乙個十進位制數:23

其二進位制數為:10111

新手**可能會有冗餘。

二進位制如何轉十進位制,十進位制如何轉二進位制

學計算機的朋友剛開始學習時都要接觸進製之間的轉換,二進位制 十進位制 八進位制 十六進製制等,這個是很枯燥的,轉來轉去就轉矇圈了,別蒙別蒙,今天咱們乙個乙個搞定,看看二進位制和十進位制之間如何相互轉換的。轉成二進位制主要有以下幾種 正整數轉二進位制,負整數轉二進位制,小數轉二進位制 1 正整數轉成二...

二進位制如何轉十進位制,十進位制如何轉二進位制

二進位制如何轉十進位制,十進位制如何轉二進位制 1 正整數轉成二進位制。要點一定一定要記住哈 除二取餘,然後倒序排列,高位補零。也就是說,將正的十進位制數除以二,得到的商再除以二,依次類推知道商為零或一時為止,然後在旁邊標出各步的餘數,最後倒著寫出來,高位補零就ok咧。哎呀,還是舉說明吧,比如42轉...

Python二進位制轉十進位制演算法 十進轉二進位制演算法

二進位制數轉換成十進位制數 二進位制數從右向左每位數乘以2的次方 從0開始,從右向左依次 1 然後相加求和即可 如 0101轉成十進位制為 1 20 0 21 1 22 0 23 1 0 4 0 5 演算法實現 coding utf 8 b raw input 請輸入乙個二進位制數 decode u...