c語言二進制代碼
發布時間: 2025-07-13 10:27:28
1. c語言 將十進制數轉化為二進制數 程序代碼
#include <stdio.h>
void main()
{
int a;
scanf(\"%d\",&a);//輸入一個10進制數。
int result=0;//存儲a的二進制結果。
int p=1;//p=1表示個位數
do
{
int b=a%2;//b是余數,第一個余數是二進制的個位。
result=result+p*b;
p=p*10;//*10表示下個是10位數。
a=a/2;
}while(a);
printf(\"\\n%d\\n\",result);
}
程序在vc6.0下編譯通過可以直接用,你自己看看吧,思路是a%2的結果是二進制的個位數,(a/2)%2的結果是二進制的十位數所以p擴大10倍,以後依次類推。
2. c語言如何將輸入的數表示成二進制,並統計其中1的個數
用我們平時十進制轉換二進制的演算法,即短除法。
例如:x&(x-1) 當x=5時, 5的二進制是0101
0101 & (0101-1) == 0101 & 0100 == 0100
0100 & (0100-1) == 0100 & 0011 == 0000
一共計算了兩次,也就是說5的二進制數一共只有2個1.
下面是代碼實現:
熱點內容