[院校资料]3-16章讲义.docVIP

  • 5
  • 0
  • 约5.81万字
  • 约 54页
  • 2018-03-04 发布于浙江
  • 举报
[院校资料]3-16章讲义

2.3 整型数据 2.3.3 整型数据的分类 整型数据分四类:基本整型(int)、短整型(short int或short)、长整型(long int或long)和无符号型(unsigned),变量默认为有符号型。不同的计算机系统,这几类整型数所占用的字节数和数值范围有不同规定,如表2.1列出。 注:在表示一个长整型常量时,应该在其后面加一字母后缀L(或l),如123L,345l等;无符号整数应在末尾加上后缀u或U,它不能表示负号。 表2.1 VC6.0中定义的整型数所占字节数和数值范围 类型名称 占用的字节数 数值范围 [signed] int 4 -231~(231-1)或(-2147483648~2147483647) [signed] short [int] 2 -215~(215-1)或(-32768~32767) [signed] long [int] 4 -231~(231-1)或(-2147483648~2147483647) unsigned [int] 4 0~(232-1)或(0~4294967295) unsigned short [int] 2 0~(216-1)或(0~65535) unsigned long [int] 4 0~(232-1)或(0~4294967295) 2.3.4 整数在内存中的存储形式   计算机中最小的存储单位是“位(bite)”,8个二进制位组成一个“字节(byte)”,若干个字节组成一个“字(word)”。对于有符号整数,最高位(最左边一位)用来存放整数的符号,正整数时最高位为0,负整数时最高位为1。 1.正整数(以原码形式存放) 如整数5在内存中的二进制码为:0000000000000101。 用两个字节存放short型的最大正整数是(215-1) 2.负整数(以“补码”形式存放) 求某个二进制码的补码,步骤如下: (1)求原码的反码,除符号位以外按位取反,即将0→1,1→0 (2)将所得的反码加1,即得原码的补码。 如求-5的补码000001011111101011111011 将二进制补码形式转化成十进制的负整数,步骤如下: (1)先对除符号位外的各位取反,即将0→1,1→0 (2)将所得二进制数转化为十进制数。 (3)对所求得的数再减1。 如-5的补码1111101100000100—-4—-4-1=-5 用两个字节存放short型的最大负整数是00000000即(-215) 3.无符号整数 无符号整数的最高位不再用来存放整型的符号,全部用来存放整数。 用两个字节存放unsigned short型的取值范围是:00000000(0)11111111(216-1) ※重点提示:在C语言中,对于有符号整数,用最高位(最左边一位)用来存储整数的符号,若是正整数,最高位为0,若是负数,最高位放置1。对于正整数用“原码”形式存放,对于负整数用“补码”形式存放。 2.4 实型数据 2.4.1 实型常量(实数) 1.实型常量的两种表示形式: (1)小数形式。由整数部分、小数点和小数部分组成。格式如下:   ±整数部分.小数部分,小数点不能省略。如0.78,﹣.8970.0都是合法实数表示。 (2)指数形式。由尾数部分、字母E或e和指数部分组成,其格式如下:   ±尾数部分E(或e)±指数部分,指数部分只能是整数,且三个组成部分均不能省略。如e2、.6E3.5、.e2、e等都是不合法的指数形式,在字母E(或e)前后不得插入空格。 2.4.2 实型变量 1.实型变量是指值为实数的变量。其命名与标识符的规则相同。 2.实型变量分为两种类型: (1)单精度型(float),分配4个字节的存储单元,数值范围约为并提供7位有效位;小于1038的数被处理成零值。 (2)双精度型(double),分配8个字节的存储单元,数值范围约为﹣1030810308,并提供15~16位的有效位;小于10308的数被处理成零值。   在计算机内存中,实数一律是以指数形式存放的,而不是小数的形式。 2.5 算术表达式 2.5.1 基本的算术运算符 C语言中基本的运算符:+、-、*、/、%。这些运算符需要两个运算对象,称为双目运算符。除%求余运算符外,运算对象可以是整型也可以是实型。 注意: (1)乘号“*”不能省略,也不能写成代数式中的“×”或“.” (2)若双目运算符两边类型不一致,则系统将自动按照类型转换规则使两边类型一致后再进行运算。如一边是实型数,一边

文档评论(0)

1亿VIP精品文档

相关文档