1樓:靜物描寫
八進位制八進位制由 0~7 八個數字組成,使用時必須以0開頭(注意是數字 0,不是字母 o),例如:
int a = 015; //換算成十進位制為 13int b = -0101; //換算成十進位制為 -65int c = 0177777; //換算成十進位制為 65535十六進位制
十六進位制由數字 0~9、字母 a~f 或 a~f(不區分大小寫)組成,使用時必須以0x或0x(不區分大小寫)開頭,例如:
//合法的十六進位制
int a = 0x2a; //換算成十進位制為 42int b = -0xa0; //換算成十進位制為 -160int c = 0xffff; //換算成十進位制為 65535拓展資料:
二進位制數、八進位制數和十六進位制數的輸出
c語言中常用的整數有 short、int 和 long 三種型別,通過 printf 函式,可以將它們以八進位制、十進位制和十六進位制的形式輸出。
2樓:失蹤的板栗
16進位制以0x開頭,後面跟數字0~9或字母a~f(小寫也可以)。如:0x2d(16進位制數2d)
8進位制以0開頭,後面跟數字0~7。如:045(8進位制數45)如果使用printf函式輸出時,可以通過格式數明符來控制輸出格式。
舉例如下:
int x=23;
printf("%x", x); // 以16進位制格式輸出,輸出17;
printf("%o", x); // 以8進位制格式輸出,輸出2。
3樓:夏天肥魚
1、八進位制以0開頭,後面跟數字0~7。如:045(8進位制數45)如果使用printf函式輸出時,可以通過格式數明符來控制輸出格式。
例如:int x=23;printf("%x", x); // 以16進位制格式輸出,輸出17;printf("%o", x); // 以8進位制格式輸出,輸出2。
2、十六進位制以0x開頭,後面跟數字0~9或字母a~f(小寫也可以)。如:0x2d(16進位制數2d)。
c語言是國際上廣泛流行的、很有發展前途的計算機高階語言。它適合作為系統描述語言,即可用來編寫系統軟體,也可用來編寫應用軟體。早期的作業系統等系統軟體主要是用組合語言編寫的(包括 unix作業系統在內)。
4樓:裸木空
如果使用printf函式輸出時,可以通過格式數明符來控制輸出格式。
舉例如下:
intx=23;
printf("%x",x);//以16進位制格式輸出,輸出17printf("%o",x);//以8進位制格式輸出,輸出2716進位制0x234這樣的(如24就是0x018,凡是以0x或0x開頭的數字序列)
8進位制01111這樣的(凡是以0開頭的數字序列)十六進位制和八進位制的賦值輸出技巧
一 賦值
int dex = 100;// 預設十進位制int oct = 0144;// 八進位制,以0開始int hex = 0x64;// 十六進位制,以0x開始二 輸出
void show(int x)
例如:int num = 100;
show(num);
輸出結果:
dec = 100; octal = 144; hex = 64dec = 100; octal = 0144; hex = 0x64
5樓:匿名使用者
資料以八進位制0或十六進位制0x開頭
%o 八進位制
%x 十六進位制
6樓:
這樣吧int a=0xff; //十六進位制
int b=010; //八進位制
7樓:匿名使用者
16進位制0x234這樣的(如24就是0x018,凡是以0x或0x開頭的數字序列)
8進位制01111這樣的(凡是以0開頭的數字序列)
8樓:匿名使用者
它和十進位制挺相似,我的理解就是,幾進位制就是到了幾,然後進一位。
c語言裡面 %d是十進位制 %o是八進位制 %x是十六進位制 %多少是二進位制
9樓:匿名使用者
c語言裡面沒有直接打出二進位制數的格式符。
c語言中對於不同型別的資料用不同的格式字元。控制printf函式輸出格式的是格式字元,printf函式中輸出的格式為printf("《格式化字串》", 《參量表》),格式化字串由格式控制、和輸出表列兩部分組成,其中格式控制包含格式宣告和普通字元。
格式宣告由「%」和格式字元組成,如%d、%f等。它的作用是將輸出的資料型別轉換為指定的格式然後輸出。普通字元是需要在輸出時原樣輸出的字元。
擴充套件資料:
printf函式格式字元:
常用的有以下幾種格式字元:
1. d格式字元。用來輸出十進位制整數。有以下幾種用法:
(1)%d,按整型資料的實際長度輸出。
(2)%md,m為指定的輸出欄位的寬度。
(3)%ld,輸出長整型資料。
2. o格式符,以八進位制整型式輸出整數。
3. x格式符,以十六進位制數形式輸出整數。
4. u格式符,用來輸出unsigned型資料,即無符號數,以十進位制形式輸出。
5. c格式符,用來輸出一個字元。
6. s格式符,用來輸出一個字串。
7. f格式符,用來輸出實數(包括單雙精度),以小數形式輸出。
8. e格式符,以指數形式輸出實數。
9. g格式符,用來輸出實數,它根據數值的大小,自動選f格式或e格式(選擇輸出是佔寬度較小的一種),且不輸出無意義的零。
10. p格式符,用於變數地址的輸出。
10樓:匿名使用者
c語言中沒有格式說明符對應二進位制形式的輸出和輸入,如果想以二進位制形式輸出某個數,可以使用自定義函式來實現。
示例:#include
void _printbinary(int a)//遞迴列印正二進位制形式數
void printbinary(int a)//以二進位制形式列印所有int型數
if (a < 0)
_printbinary(a);
}int main()
附:其他轉換說明符
%a(%a) 浮點數、十六進位制數字和p-(p-)記數法(c99)%c 字元
%d 有符號十進位制整數
%f 浮點數(包括float和doulbe)%e(%e) 浮點數指數輸出[e-(e-)記數法]%g(%g) 浮點數不顯無意義的零"0"
%i 有符號十進位制整數(與%d相同)
%u 無符號十進位制整數
%o 八進位制整數 e.g. 0123
%x(%x) 十六進位制整數0f(0f) e.g. 0x1234%p 指標
%s 字串
%% "%"
11樓:匿名使用者
%d,%o,%x等等只不過是一種格式輸出,這些都是將機器儲存的二進位制數字進行轉化從而輸出的。它只是一種輸出格式。如果你像要輸出二進位制,你可以利用組合語言。
12樓:匿名使用者
這個........
這個沒有,這個真的沒有。
十六進位制轉二進位制不是很方便嘛!
13樓:匿名使用者
c中有二進位制,例如:int i = 0b0110110
但是輸出有些困難,有些作業系統可以寫%b輸出二進位制數,有些只能轉換成其他進位制輸出。
14樓:
沒有二進位制 ,如果要輸出,你可以轉化一下呀,由十進位制轉化為二進位制,除2就可以了,取他的餘數和商,如果要輸入,你可以以十進位制讀入,再轉化為二進位制數,只不過比較麻煩
15樓:
二進位制數太長了,難以顯示,那是給機器讀的,不是給人看的。
16樓:匿名使用者
很明確的告訴你,沒有二進位制
c語言中輸出格式說明的問題,比如%d為十進位制,%o為八進位制,%x為16進位制。 那麼請問二進位制怎麼表示啊
17樓:匿名使用者
這些表示式使用了c++的iomanip庫了~這是c++
2進位制轉換沒必要,應為計算機裡流通的都是二進位制,不管什麼**要在計算機裡運算都是要轉化成2進位制的,這個不用我們特意去做
18樓:
抓住最根本的:c/c++沒有提供二進位制形式的資料輸入、輸出功能!
19樓:匿名使用者
用itoa把十進位制轉成二進位制的字串,輸出這個字串就行了
20樓:匿名使用者
沒有二進位制的輸出格式
21樓:匿名使用者
c裡面沒有專一二進位制輸出形式
八進位制和十六進位制有什麼用,八進位制和十六進位制的意義是什麼
就是為了簡潔。例如一個16位的二進位制數1010010111001011,無論寫起來還是讀起來,很費事兒,還容易出錯,寫成十六進位制數a5cd,就方便多了,也不容易出錯。八進位制,octal,縮寫oct或o,一種以8為基數的計數法,採用0,1,2,3,4,5,6,7八個數字,逢八進1。一些程式語言中...
八進位制,十進位制,十六進位制化為二進位制
書上的短除方法想必你已經會了,介紹給你一種快方法 以十進位制轉二進位制為例 回 比如十進位制是22,又根答據二進位制的位權得到 16 8 4 2 1是可以拼湊成22的數 因為它們都比22小 那好,用22 16 6,所以二進位制先消耗掉一個16 在第5位上 剩下的是6,根據位權可以得到 可以組成6的是...
八進位制和十六進位制都不是人們習慣的進位制數,它們是什麼條件下創造出來的?在哪方面比較有需要用到它們
八進位制和十六進位制都是在二進 制的基礎上創造出來的,而二進位制是在人們研究電腦時創造出來的。二進位制在電腦研究中有獨到的地方,首先,二進位制使得運算及其簡單,只有0和1兩個數,運算也僅限於0與1的加減 其次,重要的一點是人們發現用電路實現兩種狀態 通或斷 高或低電平等非常簡單,而且不容易出錯。於是...