资源描述:
《数据类型运算符与表达式.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、C语言程序设计主讲教师:杜洪波目录3.0预备知识3.1C语言的数据类型3.2常量与变量3.3整型数据3.3整型数据3.0预备知识计算机中数的表示及进制转换数码、基与权数码:表示数的符号基:数码的个数权:每一位所具有的值数制:十进制数二进制数八进制数十六进制数数码基权表示数制特点…,10²,10¹10º十进制数0~910逢十进一二进制数0~12…,2²,2¹,2º逢二进一八进制数0~78…,8²,8¹,8º逢八进一十六进制数0~9,A~F,a~f16…,16²,16¹,16º逢十六进一十进制:4956=410³+910²
2、+510¹+610º二进制:1011=12³+02²+12¹+12º十六进制:81AE=816³+116²+1016¹+1416º八进制:4275=48³+28²+78¹+58º各种进制之间的转换二进制、八进制、十六进制转换成十进制方法:按权相加各种进制之间的转换(整数)十进制转换成二进制、八进制、十六进制原理:方法:连续除以基,从低到高记录余数,直至商为0例把十进制数59转换成二进制数5922921427232120(59)10=(111011)2110111111011余余余余余余例把十进制
3、数159转换成八进制数1598198280(159)10=(237)8237余7余3余2例把十进制数459转换成十六进制数4591628161160(459)10=(1CB)161CB余11余12余1二进制与八进制之间的转换二进制转换成八进制:从右向左,每3位一组(不足3位左补0),转换成八进制八进制转换成二进制:用3位二进制数代替每一位八进制数例(1101001)2=(001,101,001)2=(151)8例(246)8=(010,100,110)2=(10100110)2000~0001~1010~2011~3100
4、~4101~5110~6111~7二进制与十六进制之间的转换二进制转换成十六进制:从右向左,每4位一组(不足4位左补0),转换成十六进制十六进制转换成二进制:用4位二进制数代替每一位十六进制数例(11010101111101)2=(0011,0101,0111,1101)2=(357D)16例(4B9E)16=(0100,1011,1001,1110)2=(100101110011110)20000~00001~10010~20011~30100~40101~50110~60111~71000~81001~91010~A1
5、011~B1100~C1101~D1110~E1111~F字节和位内存以字节为单元组成每个字节有一个地址一个字节一般由8个二进制位组成每个二进位的值是0或101234567012345678910……...7643251数值的表示方法——原码、反码和补码原码:最高位为符号位,其余各位为数值本身的绝对值反码:正数:反码与原码相同负数:符号位为1,其余位对原码取反补码:正数:原码、反码、补码相同负数:最高位为1,其余位为原码取反,再对整个数加13126912457810119-5=49+7=16=(4)12<>为什么用补码表示
6、?19-25=19+(-25)(19)10=(00010011)2(-25)10=(11100111)200010011+11100111-----------------11111010-------(-6)?引入补码之后符号位也进入了运算,不用再单独处理符号位原码反码补码+7000001110000011100000111-7100001111111100011111001+0000000000000000000000000-0100000001111111100000000数的范围01111111~11111111(
7、-127~+127)01111111~10000000(-127~+127)01111111~10000000(-128~+127)(用一字节表示数)负数补码转换成十进制数:最高位不动,其余位取反加1例补码:11111001取反:10000110加1:10000111=-73.1数据类型数据类型总表C数据类型基本类型构造类型指针类型空类型void定义类型typedef字符类型char枚举类型enum整型实型单精度型float双精度型double数组结构体struct共用体union短整型short长整型long整型int数
8、据类型决定:1.数据占内存字节数2.数据取值范围3.其上可进行的操作3.2常量与变量标识符定义:用来标识变量、常量、函数等的字符序列组成:只能由字母、数字、下划线组成,且第一个字母必须是字母或下划线大小写敏感不能使用关键字长度:最长32个字符命名原则:见名知意不宜混淆如I与l,o与0例:判断下列标识符号