当前位置:首页 » 编程语言 » 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

热点内容
python安装后怎么打开 发布:2025-01-10 11:08:35 浏览:870
phpjava架构 发布:2025-01-10 10:56:06 浏览:382
python二维排序 发布:2025-01-10 10:56:00 浏览:607
南水北调怎么配置 发布:2025-01-10 10:55:27 浏览:121
广数980系统参数密码是多少 发布:2025-01-10 10:55:25 浏览:577
androidhtml字体 发布:2025-01-10 10:55:01 浏览:787
数据库连接工厂模式 发布:2025-01-10 10:51:00 浏览:487
mac文件夹路径设置 发布:2025-01-10 10:48:12 浏览:803
shell脚本自动密码 发布:2025-01-10 10:46:29 浏览:766
安卓手机怎么切两个屏 发布:2025-01-10 10:33:51 浏览:684