C语言整形转化浮点,整型进制转换&&浮点数的进制转化---C语言快速入门



为什么有不同的进制? 有什么好处吗?​

计算机采用二进制主要是为了方便硬件的实现,电流的通、断,或高压的高、低正好能够表示二进制的0和1两个数码。二进制好处分述如下:

一、可行性:若使用十进制数,则需要这样的电子器件,它必须有能表示0—9数码的10个物理状态,这在技术上是相当困难的(目前为止没有完全解决),而使用二进制数,只需0,1两个状态,技术上轻而易举,如开关的通与断,晶体管中导通与截止等,磁介质的带磁与不带磁。

二、可靠性:二进制只有两种状态,数字传输处理不易出错。

三、简易性:二进制运算法则比较简单,  数值、图形、文字等各种形式的信息,需要计算机加工处理时,首先必须按一定的法则转换成二进制数.

然而,日常生活中使用的数是十进制数,它的特征是:

(1)有10个数字:0、1、2、3、4、5、6、7、8、9.

(2)运算时逢十进一.

二进制数的特征是:

(1)有2个数字:0,1.

(2)运算时逢二进一.

八进制数的特征:

(1)有八个数字:0,1,2,3,4,5,6,7.

(2)运算时逢八进一.

十六进制数的特征:

(1)有十六个数字:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F.

(2)运算时逢十六进一.

在十六进制中,分别用A、B、C、D、E和F来表示十进制数的10、11、12、13、14和15.​

八进制:早期的以三为倍数的计算机(如12位)经常使用8进制,但现在以2为倍数的计算机(32位,64位)就不是很好用了,所以用的也不是很多十进制:人类最熟悉的进制,高级语言都支持十进制的书写十六进制:因为2进制表示一个很小的数都很长,所以就有了十六进制,一个十六进制数可以表示的数占4位,所以十六进制数可以很好地表示二进制,他们之间的转换非常容易

进制之间的转换规则

二进制--十进制:

1011 = 1*2^3+0*2^2+1*2^1+0*2^0 = 11

十进制--二进制:

商余法,从下往上

11 2 5……1

5 2 2……1

2 2 1……0

1 2 0……1

二进制--十六进制:

二进制--十进制--十六进制

11 = 1*16^1+0*16^0 = 16

十六进制--二进制:

16=0001 0110

十六进制--十进制:

十六进制--二进制--十进制:

16 = 0001 0110 = 11

十进制--十六进制:

11 = 1*16^1+0*16^0 = 16

十进制小数--二进制:

积乘法 从上往下

1.25

0.25 2 0.5……0

0.5 2 1 ……1

二进制小数--十进制:

1.01

1*2^0+0*2^-1+1*2^-2 = 1.25

二进制小数--十六进制:

1.01 = 1*16^0+0*16^-1+1*16^-2

#include

int main()

{

int a=0xC; //十六进制数用前面加0x表示

//int a=012;//八进制前面用加0表示

int i=a;

printf("%d",i);

return 0;

}

#include

int main()

{

int a=012; //八进制前面用加0表示

int i=a;

printf("%d\n",i);

return 0;

}

0开始表示八进制,0x开始表示十六进制,C语言里没有二进制的表示方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值