本文目錄一覽:
C語言中怎樣輸出一個二進制的數?
//我們用按位運算符:右移 和按位運算符與^,這兩個功能就可以實現。
#includestdio.h
void printBinary(int number);//這是聲明一個自定義的函數,讓編譯器知道我們造了一個這麼個函數,功能:將整數以二進制形式輸出。
int main()
{
printBinary(22);//括號裡面可以填上你要輸出的整數,比如要輸出22的二進制形式
return 0;
}
void printBinary()//自定義一個函數printBinary
{
int temp = sizeof(number)-1;// 定義一個變量 :如果你的編譯器是32位的,也就是int temp = 31;
while(temp = 0) // temp 是循環的次數,不需要糾結判斷是= 還是, 寫完之後檢驗一下就知道哪個對了。
int value = numbertemp^1;// atemp。temp移動後,是把這個整數的二進制形式中最後一位,依次與1進行按位與運算。假如temp=31,就是把這個整數的二進制形式右移31位,只剩下了這個整數的二進制形式的開頭第一個數字,然後與1進行按位與運算。真則為1,假則為0。
printf(“%d”, value);//每次輸出整數的二進制形式的一個數字,從開頭開始輸出。.
temp–;// 按位右移循環,直到把整數內存中所有的位移完畢。從內存中二進制形式的第一位開始。
}
C語言中printf直接打出2進制數是%什麼?16進制是什麼?
C語言中,控制printf函數輸出格式的是格式字符,printf沒有直接打出2進制數的格式符,直接打出16進制的格式符是x格式符,即%x。
printf函數中輸出的格式為printf(“格式化字符串”, 參量表),格式化字符串由格式控制、和輸出表列兩部分組成,其中格式控制包含格式聲明和普通字符。
格式聲明由“%”和格式字符組成,如%d、%f等。它的作用是將輸出的數據類型轉換為指定的格式然後輸出。普通字符是需要在輸出時原樣輸出的字符。
擴展資料
C語言printf函數格式字符:
1、%d,按整型數據的實際長度輸出。
2、%md,m為指定的輸出字段的寬度。
3、%ld,輸出長整型數據。
4、o格式符,以八進制整型式輸出整數。
5、x格式符,以十六進制數形式輸出整數。
6、u格式符,用來輸出unsigned型數據,即無符號數,以十進制形式輸出。
7、c格式符,用來輸出一個字符。
8、s格式符,用來輸出一個字符串。
9、f格式符,用來輸出實數(包括單雙精度),以小數形式輸出。
10、e格式符,以指數形式輸出實數。
11、g格式符,用來輸出實數,它根據數值的大小,自動選f格式或e格式(選擇輸出是占寬度較小的一種),且不輸出無意義的零。
12、p格式符,用於變量地址的輸出。
13、%[scanfset]:
scanfset 有兩種形式:一種是以非 “^” 字符開頭的 scanset , 表示在讀入字符串時將匹配所有在 scanfset 中出現的字符,遇到非scanfset 中的字符時輸入就結束;
另外一種形式是以 “^” 字符開頭的scanfset ,表示在讀入字符串時將匹配所有不在scanfset 中出現的字符,遇到scanfset 中的字符輸入就結束。
參考資料來源:百度百科——格式字符
C語言中怎麼輸出數據的二進制
沒有專門的輸出二進制語句 需要自己寫函數。
比如
void print_bin(int n)
{
int i;
for(i=sizeof(n)*4-1; i=0; i –)
{
if(n(1i))printf(“1”);
else printf(“0”);
}
}
這個是通過位操作 來打印一個int型的所有二進制值的函數。
原創文章,作者:UXIV,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/139884.html