當前位置:首頁 » 編程語言 » c語言2進制輸出怎麼用
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言2進制輸出怎麼用

發布時間: 2023-06-29 05:44:35

『壹』 怎麼用c語言輸出二進制碼

在C語言的標准輸出中,有16進制,10進制和8進制的輸出格式,但是沒有二進制的輸出格式。所以要想輸出二進制,只能靠自己寫函數進行輸出了。

基本思想為通過移位操作+與操作取出各個位上的值,然後對其進行輸出即可。

以32位無符號整型數據二進制輸出為例,代碼如下:

#include<stdio.h>
voidbinary_print(unsignedintv)
{
inti;
intbit;
intsize=sizeof(v)*8;
//這里的size是輸入參數v的位數,直接用32代替也可以,但寫成sizeof(v)*8這樣更為通用。
for(i=0;i<size;i++)
{
bit=v&(1<<(size-i-1));//提取出第i位的值
if(bit==0)putchar('0');
elseputchar('1');
}
}

『貳』 C語言中怎樣輸出一個二進制的數

//我們用按位運算符:右移>>和按位運算符與^,這兩個功能就可以實現。
#include<stdio.h>
voidprintBinary(intnumber);//這是聲明一個自定義的函數,讓編譯器知道我們造了一個這么個函數,功能:將整數以二進制形式輸出。

intmain()
{
printBinary(22);//括弧裡面可以填上你要輸出的整數,比如要輸出22的二進制形式
return0;
}
voidprintBinary()//自定義一個函數printBinary
{
inttemp=sizeof(number)-1;//定義一個變數:如果你的編譯器是32位的,也就是inttemp=31;

while(temp>=0)//temp是循環的次數,不需要糾結判斷是>=還是>,寫完之後檢驗一下就知道哪個對了。

intvalue=number>>temp^1;//a>>temp。temp移動後,是把這個整數的二進制形式中最後一位,依次與1進行按位與運算。假如temp=31,就是把這個整數的二進制形式右移31位,只剩下了這個整數的二進制形式的開頭第一個數字,然後與1進行按位與運算。真則為1,假則為0。

printf("%d",value);//每次輸出整數的二進制形式的一個數字,從開頭開始輸出。.
temp--;//按位右移循環,直到把整數內存中所有的位移完畢。從內存中二進制形式的第一位開始。

}

『叄』 c語言的二進制數值如何直接輸出

沒有二進制直接輸出,可以自己編寫程序:
void
f(int
n)
{
if(n)
f(n/2);
else
return;
printf("%d",n%2);
}
上面是一個遞歸調用函數,它可以輸出n的二進制格式

『肆』 如何在c語言中輸出二進制數

可以用 %x格式 輸出16進制數,16進制一位拉4位,按8421分布,就是2進制數。1個位元組正好用2位16進製表示,轉為8位2進制。

『伍』 C語言中怎麼輸出數據的二進制

C語言中,默認支持16進制的數據輸出,其實這個就是一個更容易閱讀的二進制顯示。
C語言的標准庫,沒有二進制輸出函數,需要自己寫,寫法主要有兩種:
1.
除以2和對2取余數的循環;
2.
位移操作和位與(&)操作;
第二種效率高些:
int dat = 12345;
int ibit = 0x01;
for(int i=31;i>=0;i--){
a[i] = (dat & ibit)==0 ? 0,1;
ibit << 1;
}
for(i=0;i<32;i++)
printf("%d",a[i]);

『陸』 如何在c語言中輸出二進制數

二進制是不可以直接輸出的,但是可以用程序輸出
#include<stdio.h>
void
f(int
n)
{
if(n)
f(n/2);
else
return;
printf("%d",n%2);
}
int
main()
{
int
n;
while(1)
{
scanf("%d",&n);
if(n<0)
break;
if(n==0)
printf("0");
f(n);
printf("\n");
}
return
0;
}

『柒』 c語言的二進制數值如何直接輸出

1、首先打開vc6.0, 新建一個項目。