第2版电子课件office2003版C语言第2版第2章基本语句2003版

上传人:E**** 文档编号:91553393 上传时间:2019-06-29 格式:PPT 页数:119 大小:2.89MB
返回 下载 相关 举报
第2版电子课件office2003版C语言第2版第2章基本语句2003版_第1页
第1页 / 共119页
第2版电子课件office2003版C语言第2版第2章基本语句2003版_第2页
第2页 / 共119页
第2版电子课件office2003版C语言第2版第2章基本语句2003版_第3页
第3页 / 共119页
第2版电子课件office2003版C语言第2版第2章基本语句2003版_第4页
第4页 / 共119页
第2版电子课件office2003版C语言第2版第2章基本语句2003版_第5页
第5页 / 共119页
点击查看更多>>
资源描述

《第2版电子课件office2003版C语言第2版第2章基本语句2003版》由会员分享,可在线阅读,更多相关《第2版电子课件office2003版C语言第2版第2章基本语句2003版(119页珍藏版)》请在金锄头文库上搜索。

1、C语言程序设计教程 (第2版),第2章 基本的程序语句,本章主要内容 1. 用二进制表示的数 2.基本数据类型及取值范围 3.标识符、变量和常量 4.基本运算符、表达式及运算的优先级 5.标准输入/ 输出函数简介 6.程序范例,第2章 引言,C语言数据类型,1整型数的二进制表示 整型数分为有符号的和无符号的两种; 有符号的整型数的正负号由字节的最高位来表示:0表示正数,1表示负数。 整型数占用的空间可为8位、16位或者32位,即1字节、2字节或4字节。 整型数的取值范围:,2.1 用二进制表示的数,2浮点数的二进制表示 浮点数分成单精度浮点数和双精度浮点数; 单精度浮点数占32位(4个字节),

2、双精度浮点数占64位(8个字节)。 浮点型数据的一般表达式: (1)S2em e是实际的阶码值,代表浮点数的取值范围; m是尾数,代表浮点数的精度。,2.1 用二进制表示的数,(1)单精度浮点型数据的字节分配空间:,2.1 用二进制表示的数,S代表符号位,占1位。 E称为“移码”,占8位。 E的取值范围为0255,E=127+e 因此,e的取值范围为127+128); M代表有效位数或称为“小数”, m2=(1.M)2,(2)双精度浮点型数据的字节分配空间:,2.1 用二进制表示的数,S代表符号位,占1位。 E称为“移码”,占11位。 E的取值范围为02047,E=1023+e 因此,e的取值

3、范围为1023+1024); M代表有效位数或称为“小数”, m2=(1.M)2,浮点型数据的取值范围:,2.1 用二进制表示的数,1. C语言提供5种基本数据类型。 (1)字符型:用char表示。 (2)整数型:用int表示。 (3)单精度实数型:用float表示。 (4)双精度实数型:用double表示。 (5)空类型:用void表示。 对整数型,有四种修饰: signed(有符号) unsigned(无符号) long(长型) short(短型) 数据类型决定了数据的大小、数据可执行的操作以及数据的取值范围。,2.2 基本数据类型及取值范围,有符号数(ANSI C标准), 短整型。以sh

4、ort int或short表示。 数值范围:3276832767,占2个字节。 长整型。以long int或long表示。 数值范围:2147483648+2147483647,占4个字节。 基本型。以int表示。 数值范围:3276832767,占2个字节。,无符号数( ANSI C标准), 短整型。以unsigned short int或unsigned short表示。 数值范围:065535,占2个字节。 长整型。以unsigned long int或unsigned long表示。 数值范围:04294967295,占4个字节。 基本型以unsigned int表示。 数值范围:06

5、5535,占2(或4)个字节。 虽然一个无符号整型变量中存放的数的大小比有符号整型变量扩大了一倍,但是一个无符号整型变量中存放的数的范围与有符号整型变量中存放的数的范围是一样的。,数据类型的长度和取值范围会随着机器的CPU类型和编译器的不同而不同。,2.2 基本数据类型及取值范围,例1:验证数据类型的字节长度。 见【例2-1】所示的程序:example2_1.c 注:语言提供了一个能够测定某一种类型数据所占存储空间长度的函数“sizeof()”,它的格式为:sizeof(类型标识符) 不同字节长度的数据类型和取值范围: 见表2-5和表2-6,2.2 基本数据类型及取值范围,2.3.1 标识符

6、标识符是对变量名、函数名、标号和其他各种用户定义的对象命名。建议取有实际意义的标识符来命名,正规标示符名称是用英文单词。 标识符的第1个字符必须是字母或下划线,标识符的长度可以是一个或多个字符,最长不允许超过32个字符。 例如: score、number12、student_name等均为正确的标识符; 8times、price/tea、low!valume等均不为正确的标识符。 注意: (1) 标识符区分大小写,score、Score、SCORE代表三个不同的标识符。 (2)标识符不能和C语言的关键字相同 (3)标识符不能和用户自定义的函数或C语言库函数同名,2.3 标识符、变量和常量,2.

7、3.2 变量和常量 1. 变量 程序运行时,数据被存放在一定的存储空间中。数据连同其存储空间被抽象为变量。值可以改变的量称为变量。 在程序中引用一个变量,实际上是对指定的存储空间的引用。因此必须先开辟(分配)存储空间才能引用它。即在引用变量之前必须先定义变量,指定其类型。在编译时就会根据指定的类型分配其一定的存储空间,并决定数据的存储方式和允许操作的方式。,2.3 标识符、变量和常量,变量,变量的两个要素:标识符 (名字)和值。 C 语言规定:变量必须在使用之前定义。 变量定义的一般形式是: ; 必须是有效的C数据类型,如:int、float等,类型名规定了变量的存储空间和取值范围。 可以由一

8、个或多个由逗号分隔的多个标识符名构成。,如: int i, j, number; unsigned int max, min; float high_value, price; double lenth, total_wieight; 思考:上面各种变量的类型和他们的取值范围。,2.3 标识符、变量和常量,例2:运行下面的程序,了解变量的取值范围和C语言的特性。 /*example2_2.c 变量的取值范围测试*/ #include main() int a=32766,b=-32766; unsigned m=6553; float t=3.4e+37; printf(“a=%dn“,a);

9、 printf(“m=%un“,m); printf(“t=%en”,t); a=a+4;,2.3 标识符、变量和常量,b=b-6; m=m*10+10; t=t*10; printf(“After change:n“); printf(“a+4=%dn“,a); printf(“b-6=%dn“,b); printf(“m*10+10=%un“,m); printf(“t*10=%en“,t); ,2.常量 常量的值是不可变的。 在C语言中,有整型常量、实型常量、字符常量、字符串常量、和枚举常量等。 (1)整型常量 可采用十进制、八进制、十六进制来表示整型常量。 八进制数的前面用数字0开头,

10、 十六进制数前面用数字0和字母X开头(0x或0X) 整型常量的表示见表2-9。,2.3 标识符、变量和常量,合法的十进制、八进制和十六进制数字,5121 -(十进制整数) 0111 -(八进制数,等于十进制数73) 010007 -(八进制数,等于十进制数4103) 0177777 -(八进制数,等于十进制数65537) 0xFFFF-(十六进制数,等于十进制数65537) 32768 -(十进制负数) 0xA3 -(十六进制数,等于十进制数163),不合法的八进制和十六进制数字,09876 -(非十进制数,又非八进制数,因为有数字8和9) 20fa -(非十进制数,又非十六进制数,因为不是以

11、0x开头) 0x10fg -(出现了非法字符) PS:由于一个短整型无符号整数以二个字节存储,因此数的范围为065535之间,用八进制数表示则为00177777之间,用十六进制数表示为0x00xFFFF之间。超出上述范围的整型常数,要用长整数(32位,长整数的存储空间为4个字节)表示。,长整数,整型数后加字母l(或L)为长整数。 12L -(十进制长整数) 774545L -(十进制长整数) 076L -(八进制长整数,等于十进制数62) 0200000L -(八进制长整数,等于十进制数65536) 0x12L -(十六进制长整数,等于十进制数18) 0x2000L -(十六进制长整数,等于十

12、进制数8192),例3:了解整型常量的不同进制表示法。 /*example2_3.c */ #include main() printf(“十六进制0x80的十进制值为:%dn“,0x80); printf(“八进制0200的十进制值为:%dn“,0200); printf(“十进制128的十进制值为:%dn“,128); printf(“十进制128的十六进制值为:%xn“,128); printf(“十进制128的八进制值为:%on”,128); ,2.3 标识符、变量和常量,(2)实型常量 实型常量的两种表示法:浮点计数法和科学计数法。 例如: 231.46,7.36E7,4.58E5,

13、0.0945 对太大或太小的数,通常是采用科学计数法。 如上面的7.36E7、4.58E5。 实型常量不能用八进制或十六进制形式表示。,2.3 标识符、变量和常量,例4:了解实型常量的两种表示法。 /*example2_4.c (浮点计数法,科学计数法)*/ #include main() printf(“123.4456的浮点数表示:%6fn“,123.456); printf(“1.23456E2的浮点数表示:%6fn“,1.23456e2); printf(“12345.6E-2的浮点数表示:%6fn“,12345.6e-2); printf(“12345.6的科学计数法表示:%En“,

14、12345.6); ,2.3 标识符、变量和常量,(3)字符常量 字符常量是由一对单引号括起来的单个字符。 如:A、S、9、$ 等均为字符常量。 注1:单引号只起定界作用,并不代表字符。 注2:单引号 ()和反斜杠()本身作为字符时要通过转义字符()。 如:和 分别代表单个字符单引号()和反斜杠()。,2.3 标识符、变量和常量,在C语言中,字符是按其所对应的ASCII的值来存储的,一个字符占一个字节。 部分字符所对应ASCII码值如下:,2.3 标识符、变量和常量,字符和与之对应的ASCII详见附录B,注意: 数字3和字符 3 的区别:,2.3 标识符、变量和常量,字符也可以参与运算: 如:

15、 A+6;运算结果为71,对应的字符为H。 87;运算结果为49,对应的字符为1。 y32;运算结果为89,对应的字符为Y。,例5:了解字符常量与其顺序值的关系。 /*example2_5.c 字符常量与其顺序值的关系*/ #include main() printf(“%d%cn“,A,A); printf(“%d%cn“,A+5,A+5); printf(“%d%cn“,A+70,A+70); ,2.3 标识符、变量和常量,程序运行结果: 65A 70F 135?,转义字符,转义字符用反斜杠后面跟一个字符或一个八进制或十六进制数表示。 如:a,0,n等。 代表ASCII字符中不可打印的控制字符和特定功能的字符。 表示特殊字符,如:单引号()、双引号(“)和反斜杠()等。 常用的转义字符见表2-12。,转义字符,注意 转义字符中的字母只能是小写字母,每个转义字符只能看作一个字符。 表2-12中的r、v和 f对屏幕输出不起作用,但会在控制打印机输出执行时响应其操作。 在程序中,使用不可打印字符时,通常用转义字符表示。,转义字符的说明,(1)用反斜杠开头,后面跟一个特定字母代表一个控制

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号