C语言从入门到精通第3章.ppt
《C语言从入门到精通第3章.ppt》由会员分享,可在线阅读,更多相关《C语言从入门到精通第3章.ppt(51页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C语言从入门到精通第3章 计算机如何识数数制 p 整型p 字符型 p 浮点型 p 类型转换 p 综合应用类型转换p 跟我上机 C语言从入门到精通第3章 计算机如何识数数制 整型p 字符型 p 浮点型 p 类型转换 p 综合应用类型转换p 跟我上机 C语言从入门到精通第3章 计算机如何识数数制 整型 字符型 p 浮点型 p 类型转换 p 综合应用类型转换p 跟我上机 C语言从入门到精通第3章 计算机如何识数数制 整型 字符型 浮点型 p 类型转换 p 综合应用类型转换p 跟我上机 C语言从入门到精通第3章 计算机如何识数数制 整型 字符型 浮点型 类型转换 p 综合应用类型转换p 跟我上机 C语
2、言从入门到精通第3章 计算机如何识数数制 整型 字符型 浮点型 类型转换 综合应用类型转换p 跟我上机 C语言从入门到精通第3章 计算机如何识数数制 整型 字符型 浮点型 类型转换 综合应用类型转换 跟我上机 C语言从入门到精通第3章3.1.1 二进制3.1.2 八进制3.1.3 十六进制3.1.4 数制间的转换C语言从入门到精通第3章数据在计算机里是以二进制形式的数表示的,在实际程序中,许多系统程序需要直接对二进制位的数据操作,还有不少硬件设备与计算机通信都是通过一组二进制数控制和反映硬件的状态。在表示一个数时,二进制形式位数多,八进制和十六进制比二进制书写方便些,他们都是计算机中计算常用的
3、数制。C语言从入门到精通第3章二进制是逢二进一的数制,目前的计算机全部都是采用二进制系统。0和1是二进制数字符号,运算规则简单,操作方便,因为每一位数都可以用任何具有两个稳定状态的元件表示,所以二进制易于用电子方式实现。C语言从入门到精通第3章1.二进制运算规则加法:000,011,101,1110减法:000,101,110,1011乘法:000,010,100,111除法:010,111例如,((1100))2+((0111))2计算如下:1100+011110011C语言从入门到精通第3章2.二进制转换为十进制十进制是逢十进一,由数字符号0,1,2,3,4,5,6,7,8,9组成,可以这
4、样分析十进制数:(1234)10=1*103+2*102+3*101+4*100=1000+200+30+4=(1234)10采用同样的方式转换二进制到十进制。(1101)2=1*23+1*22+0*21+1*20=8+4+0+1=(13)10(10.01)2=1*21+0*20+0*2-1+1*2-2=2+0+0+0.25=(2.25)10C语言从入门到精通第3章3.十进制转换二进制 十进制整数转换为二进制:方法是除以2取余,逆序排列,以(89)10为例,如下。89 2 余144 2 余022 2 余011 2 余15 2 余12 2 余01余1(89)10=(1011001)2(5)10=
5、(101)2(2)10=(10)2C语言从入门到精通第3章 十进制小数的转换为二进制:方法是乘以2取整,顺序排列,以(0.625)10为例,如下。0.625*2=1.25取整10.25*2=0.5取整00.5*2=1取整1(0.625)10=(0.101)2(0.25)10=(0.01)2(0.5)10=(0.1)2C语言从入门到精通第3章八进制是逢八进一的数制,采用07八个数字组成。八进制比二进制书写方便,也常用于计算机计算。需要注意的是,C语言中,八进制数以数字0开头,比如04,017等等。1.八进制转换为十进制和二进制转换为十进制的原理相同,如:(64)8=6*81+4*80 =48+4
6、=(52)102.二进制转换为八进制整数部份从最低有效位开始,以3位二进制数一组,最高有效位不足3位时以0补齐,每一组均可转换成一个八进制的值,转换结果就是八进制的整数。小数部份从最高有效位开始,以3位一组,最低有效位不足3位时以0补齐,每一组均可转换成一个八进制的值,转换结果就是八进制的小数。例如:(11001111.01111)2=(011 001 111.011 110)2=(317.36)8C语言从入门到精通第3章十六进制就是逢十六进一的数制,采用09和AF十六个数字组成(A代表10,F代表15),也常用于计算机计算。C语言中,十六进制数以数字0 x开头,比如0 x1A,0 xFF等。
7、1.十六进制转换为十进制和二进制转换为十进制的原理相同,如:(2FA)16=2*162+F*161+A*160=512+240+10=(762)102.二进制转换为十六进制与二进制转换为八进制相似,只是转换为十六进制时,以4位二进制数为一组,每一组转换为一个十六进制的值。例如:(11001111.01111)2=(1100 1111.0111 1000)2=(CF.78)16C语言从入门到精通第3章前面已经接触过标准输出函数printf()了,这里就使用printf()函数输出转换的结果。printf()函数的格式控制参数如下表所示。格式控制参数格式控制参数描述描述%d十进制有符号整数%u十进
8、制无符号整数%f十进制浮点数%o八进制数%x十六进制数C语言从入门到精通第3章【范例范例3-1】分别使用十进制、八进制和十六进制输出已知数值。分别使用十进制、八进制和十六进制输出已知数值。01#include 02 int main(void)03 04 unsigned int x=12;05 unsigned int y=012;/*八进制0开头*/06 unsigned int z=0 x12;/*十六进制0 x开头*/07 printf(十进制%u转化为 八进制%o 十六进制%xn,x,x,x);/*%u表示无符号十进制数*/08 printf(八进制%o转化为 十进制%u 十六进制%
9、xn,y,y,y);/*%o表示无符号八进制数*/09 printf(十六进制%x转化为 八进制%o 十进制%un,z,z,z);/*%x表示无符号十六进制数*/10 return 0;11 C语言从入门到精通第3章整型数据,英文单词是Integer,比如0,-12,255,1,32767等等这些都是整型数据。整型数据中是不允许出现小数点和其它特殊符号的。整型数据共分为七类,分别是字符型、短整型、整型、长整型、无符号短整型、无符号整型和无符号长整型。其中短整型、整型和长整型是有符号数据类型。C语言从入门到精通第3章整型整型字符型字符型char短整型短整型shortint整型整型int长长整型整
10、型longint无符号无符号短整型短整型unsignedshort无符号无符号整型整型unsignedint无符号无符号短整型短整型unsignedlongC语言从入门到精通第3章1.取值范围类型类型说明说明字节字节范围范围整型int4-21474836482147483647短整型short(int)2-3276832767长整型long(int)4-21474836482147483647无符号整型unsigned(int)404294967295无符号短整型unsigned short(int)2065535无符号长整型unsigned long(int)404294967295字符型c
11、har10255C语言从入门到精通第3章2.有符号数和无符号数对于有符号数,以最高位(左边第一位)作为符号位,最高位是0表示的数据是正数,最高位是1表示的数据是负数。整数10二进制形式:00001010整数-10二进制形式:10001010C语言从入门到精通第3章对于无符号整数,因为表述的都是非负数,一个字节中的8位全部用来存储数据,不再设置符号位。整数10二进制形式:00001010整数138二进制形式:10001010C语言从入门到精通第3章3.类型间转换不同类型的整型数据所占的字节数不同,他们在相互转换时需要格外留心,不要把过大的数据放在过小的数据类型中,在把占字节较大的数据赋值给占字节
12、较小的数据时,防止出现以下的情况。例如int a=2147483648;printf(%d,a);这样赋值后,输出变量a的值并非预期的2147483648,而是-2147483648,原因是2147483648超出了int类型能够装载最大值,数据产生了溢出。如果换一种输出格式控制符,代码如下所示:printf(%u,a);输出的结果就是变量a的值,原因是%u是按照无符号整型输出的数据,而无符号整型的数据范围上限大于2147483648这个值。C语言从入门到精通第3章unsigned short a=256;char b=a;printf(%d,b);这样赋值后,输出变量b的值并非预期的256,
13、而是0,原因是256超出了char类型能够装载最大值,b只截取了a的低8位的数据,如下:变量a0000000100000000变量b高8位被截掉了!00000000C语言从入门到精通第3章当把占字节较小的数据赋值给占字节较大的数据时,可能出现以下两种情况。第1种情况,当字节较大数是无符号数时,转换时新扩充的位被填充成0char b=10;unsigned short a=b;printf(%u,a);这样赋值后,变量a中输出的值是10,原因如下:变量b空的00001010变量a0000000000001010C语言从入门到精通第3章第2种情况,当字节较大数是有符号数时,转换时新扩充的位被填充成
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 入门 精通
限制150内