當前位置:首頁 » 編程語言 » c語言八進制

c語言八進制

發布時間: 2022-02-14 17:47:52

c語言中八進制和16進制怎麼表示

一、八進制由 0~7 八個數字組成,使用時必須以0開頭(注意是數字 0,不是字母 o),例如:

//合法的八進制數

int a = 015; //換算成十進制為 13

int b = -0101; //換算成十進制為 -65

int c = 0177777; //換算成十進制為 65535

//非法的八進制

int m = 256; //無前綴 0,相當於十進制

int n = 03A2; //A不是有效的八進制數字

二、十六進制由數字 0~9、字母 A~F 或 a~f(不區分大小寫)組成,使用時必須以0x或0X(不區分大小寫)開頭,例如:

//合法的十六進制int a = 0X2A; //換算成十進制為 42

int b = -0XA0; //換算成十進制為 -160

int c = 0xffff; //換算成十進制為 65535

//非法的十六進制

int m = 5A; //沒有前綴 0X,是一個無效數字

int n = 0X3H; //H不是有效的十六進制數字

二進制化為八進制

整數部份從最低有效位開始,以3位一組,最高有效位不足3位時以0補齊,每一組均可轉換成一個八進制的值,轉換完畢就是八進制的整數。

小數部份從最高有效位開始,以3位一組,最低有效位不足3位時以0補齊,每一組均可轉換成一個八進制的值,轉換完畢就是八進制的小數。

例:(11001111.01111)2 = (011 001 111.011 110)2 = (317.36)8

以上內容參考:網路-八進制

② C語言八進制詳解

八進制是以8為基數的一種計數系統。在八進制系統中,你是這樣計數的:O,1,2,3,4,5,6,7,10,ll,12,13,等等。下面比較了八進制(第二行)和十進制(第一行)中的計數過程: O,l,2,3,4,5,6,7,8,9,10.11,12,13,14,15,16 0,1,2.3,4,5,6,7,10,11,12,13,14,15,16,17,20 注意,在八進制中,在數到7後,就要增加一個八進制位,第二個八進制位顯然就是8?(等於十進制的8)。如果你數到第三個八進制位(八進制的100),那將是8?或十進制的64,因此,八進制的100等於十進制的64。 現在,八進制已經不象以前那樣常用了,這主要是因為現在的計算機使用的是8,16,32或64位處理器,最適合它們的計數系統是二進制或十六進制(見20.24中有關十六進制計數系統的介紹) C語言支持八進制字元集,這種字元要用反斜杠字元來標識。例如,在C程序中,下面的語句並不少見: if(x=='\007')break; 這里的"\007"恰好就是ASCII值為7的字元;該語句用來檢查終端鳴笛字元。另一個常見的八進制數是"\033",即Escape字元(在程序中它通常表示為"\033")。然而,八進制數現在已經很少見了——它們被十六進制數代替了。

③ C語言中的八進制

除了二進制,C語言還會使用到八進制。

八進制是一種「逢八進一」的進制,它由 0~7 八個符號來描述。同樣,此處通過十進制和八進制的對比來描述八進制的表示方式。

八進制基數為8,加法運算時逢八進一,減法運算時借一當八。例如,數字 0、1、5、7、14、733、67001、25430 都是有效的八進制。

當使用八進製表示十進制數字8時,由於表示八進制的符號只有 0~7,因此,根據逢八進一的規則,需要向高位進一位,表示為10。同理,使用八進製表示十進制數字16時,繼續向高位進一位,表示為 20。

(3)c語言八進制擴展閱讀

八進制轉換為十進制的源代碼如下

#include<stdio.h>

void main()

{

char *p,s[6];int n;

p=s;

printf("Please input a Octal number:");

gets(p);

n=0;

while(*(p)!='')

{

n=n*8+*p-'0';

p++;

}

printf("Octal number to Decimal number:%d",n);

}

④ C語言的八進制怎麼記

以0b開頭,後面接數字為二進制, 比如 0b10 是二進制數,等於10進制的 2
以0開頭,後面接數字為八進制, 比如 010 是八進制數,等於10進制的 8
以0x開頭,後面接數字為十六進制, 比如 0x10 是十六進制數,等於10進制的 16

⑤ 在C語言中整型常數可用十進制、八進制和______進制三種數製表示。

在C語言中整型常數可用十進制、八進制和十六進制三種數製表示。

1、八進制整常數必須以0開頭,即以0作為八進制數的前綴。數碼取值為0~7。八進制數通常是無符號數。

(1)以下各數是合法的八進制數:

015、0101、0135777。

(2)以下各數不是合法的八進制數:

252(無前綴0)、0386(包含了非八進制數碼)、-0127。

2、十六進制整常數的前綴為0X或0x。其數碼取值為0~9,A~F或a~f。

(1)以下各數是合法的十六進制整常數:

0X2A(十進制為42)、0XA0 (十進制為160)、0XFFFF (十進制為65535)。

(2)以下各數不是合法的十六進制整常數:

5A (無前綴0X)、0X3H (含有非十六進制數碼)。

3、十進制整常數沒有前綴。其數碼為0~9。

(1)以下各數是合法的十進制整常數:

235、-528、65535、1627。

(2)以下各數不是合法的十進制整常數:

023 (不能有前導0)、23D (含有非十進制數碼)。

(5)c語言八進制擴展閱讀:

C語言的數據類型包括:整型、字元型、實型或浮點型(單精度和雙精度)、枚舉類型、數組類型、結構體類型、共用體類型、指針類型和空類型。

C語言包含有各種控制語句僅有9種,關鍵字也只有32個,程序的編寫要求不嚴格且多以小寫字母為主,對許多不必要的部分進行了精簡。

實際上,語句構成與硬體有關聯的較少,且C語言本身不提供與硬體相關的輸入輸出、文件管理等功能,如需此類功能,需要通過配合編譯系統所支持的各類庫進行編程,故C語言擁有非常簡潔的編譯系統。

C語言的運算非常靈活,功能十分豐富,運算種類遠多於其它程序設計語言。在表達式方面較其它程序語言更為簡潔,如自加、自減、逗號運算和三目運算使表達式更為簡單,但初學者往往會覺的這種表達式難讀,關鍵原因就是對運算符和運算順序理解不透不全。當多種不同運算組成一個運算表達式,即一個運算式中出現多種運算符時,運算的優先順序和結合規則顯得十分重要。

⑥ c語言中十六進制和八進制的格式

如果使用printf函數輸出時,可以通過格式數明符來控制輸出格式。

舉例如下:
intx=23;
printf("%x",x);//以16進制格式輸出,輸出17
printf("%o",x);//以8進制格式輸出,輸出27

怎麼表示:

16進制0x234這樣的(如24就是0x018,凡是以0X或0x開頭的數字序列)

8進制01111這樣的(凡是以0開頭的數字序列)

拓展資料:

十六進制和八進制的賦值輸出技巧

一 賦值

int dex = 100;// 默認十進制

int oct = 0144;// 八進制,以0開始

int hex = 0x64;// 十六進制,以0x開始

二 輸出

void show(int x)

{

printf("dec = %d; octal = %o; hex = %x ",x,x,x);

printf("dec = %d; octal = %#o; hex = %#x ",x,x,x);

}

例如:

int num = 100;

show(num);

輸出結果:

dec = 100; octal = 144; hex = 64

dec = 100; octal = 0144; hex = 0x64

⑦ C語言中 怎樣區分八進制 十進制 二進制

編程語言通常規定是以0開頭的數字是八進制數,以0x開頭的數字是十六進制數,其餘的就是十進制數,至於你說的「十進制是D表示 二進制是B 十六進制是H」在編寫程序時是不能用的,那隻是為了方便,書寫時(不是在計算機上編程時)用到的(只對於C語言編程,匯編語言編程時,是寫上的),你的程序 int x=011中,x是用八進製表示的一個數字,他是9.後面的printf("%d\n",++x);是以10進制形式列印結果(%d的作用),所以程序運行的結果是9.

⑧ C語言, 怎麼輸入八進制數

C語言中scanf()函數支持輸入整數時按8進制進行輸入,如:

#include<stdio.h>
voidmain(void)
{
intx;
scanf("%o",&x);//按8進制輸入
printf("hex:%#X,dec:%d,oct:%#o ",x,x,x);//按16進制10進制8進制進行數據輸出
}

scanf()函數還支持按16進制輸入,格式串為:%x

熱點內容
阿里雲怎麼買游戲伺服器 發布:2025-01-10 02:01:51 瀏覽:845
dota和英雄聯盟哪個吃配置 發布:2025-01-10 02:00:33 瀏覽:179
華為雲伺服器怎麼登錄 發布:2025-01-10 01:59:48 瀏覽:125
東南大學知網伺服器地址 發布:2025-01-10 01:54:40 瀏覽:931
安卓手機剪映怎麼修改成4k幀率 發布:2025-01-10 01:08:21 瀏覽:951
微信哪個版本不要求配置 發布:2025-01-10 01:07:31 瀏覽:405
三星插卡激活要密碼是什麼意思 發布:2025-01-10 00:57:04 瀏覽:675
web伺服器搭建黑馬 發布:2025-01-10 00:56:05 瀏覽:825
戴爾伺服器可以當電腦 發布:2025-01-10 00:56:05 瀏覽:857
linux內存分布 發布:2025-01-10 00:55:58 瀏覽:125