C语言与程序设计教程 教学课件 ppt 作者 胡元义 全书教案_ 第2章

上传人:E**** 文档编号:89370853 上传时间:2019-05-24 格式:PPT 页数:192 大小:1.48MB
返回 下载 相关 举报
C语言与程序设计教程 教学课件 ppt 作者 胡元义 全书教案_ 第2章_第1页
第1页 / 共192页
C语言与程序设计教程 教学课件 ppt 作者 胡元义 全书教案_ 第2章_第2页
第2页 / 共192页
C语言与程序设计教程 教学课件 ppt 作者 胡元义 全书教案_ 第2章_第3页
第3页 / 共192页
C语言与程序设计教程 教学课件 ppt 作者 胡元义 全书教案_ 第2章_第4页
第4页 / 共192页
C语言与程序设计教程 教学课件 ppt 作者 胡元义 全书教案_ 第2章_第5页
第5页 / 共192页
点击查看更多>>
资源描述

《C语言与程序设计教程 教学课件 ppt 作者 胡元义 全书教案_ 第2章》由会员分享,可在线阅读,更多相关《C语言与程序设计教程 教学课件 ppt 作者 胡元义 全书教案_ 第2章(192页珍藏版)》请在金锄头文库上搜索。

1、第2章 C语言程序设计基础,2.1 C语言基本符号与基本数据类型 2.2 常量 2.3 变量 2.4 运算符与表达式 2.5 数据的输入/输出,2.1 C语言基本符号与基本数据类型,2.1.1 C语言基本符号 程序是由一个个字符组成的,任何程序语言都规定了该语言所允许使用的字符集合。C语言使用的全部字符是ASCII码字符集(见附录1),它包括256个字符,每个字符都对应着一个不同的序号(码值);前128个字符为标准的ASCII码字符,其中序号为0、1、2、31以及127的字符为控制字符,它们用于完成规定的功能操作;序号从32到126的96个字符是文字字符,它们用于显示和打印;其中,(1) 序号

2、从4857:数字0、1、2、3、4、5、6、7、8、9。 (2) 序号从6590:26个大写英文字母A、B、C、X、Y、Z。 (3) 序号从97122:26个小写英文字母a、b、c、x、y、z。 (4) 其他一些可打印(显示)的字符,如各种标准符号、运算符号和括号等:,(5) 一些特殊字符,如空格符、换行符、制表符(跳格)等。空格符、换行符、制表符等统称为空白字符,它们在程序中的主要作用是用来分隔其他成分;即通过加入一些空白字符把程序排成适当的格式,以增加程序的可读性。 序号由128至255的ASCII码字符都是特殊的字符,对于不同的计算机,它们所代表的字符不同。此外,C语言在字符串常量和注释

3、中还可以使用汉字等其他图形符号。 由一个或多个字符组成具有确切含义并相对独立的字符串称之为单词符号。单词符号是一个程序语言的基本语法符号。C语言的单词符号分为专用符号、关键字和标识符等 类别。,1. 专用符号 常用的C语言专用符号见表2.1,其中的每一个符号都有独立的含义。其中,双字符号 =、=、&、 都是一个独立的整体,不能将其分开书写。,表2.1 常用的C语言专用符号表,2. 关键字 关键字是程序设计语言自身保留下来用以表达特定含义的单词集合。C语言的关键字共有32个(见表2.2),它们可以命名语句功能(如for、if、do等)、定义数据类型(如int、float、struct等)、还有某

4、些运算符(如sizeof)等作用。由于关键字具有程序语言中预先定义好的特殊意义,因此只能在程序需要的地方使用,而不允许重新定义关键字,改变其原有的含义。,表2.2 C语言关键字,3. 标识符 在程序中,常常用具有一定意义的名字来标识程序中的变量名、函数名和数组名,以便在程序中根据名字访问它,而程序中各种名字都是用标识符来表示的。C语言中关于标识符的规定如下: (1) 一个标识符是字母开头的字母和数字字符的一个连续序列,其中不得有空白字符,C语言特别规定下划线字符“_”也作为字母看待。 (2) 标识符中同一字母的大小写是有区别的,即看做不同的字符。 (3) 标识符不能与关键字同名。,例2.1 以

5、下4组用户定义标识符中,全部合法的一组是_。 A) _main B) if C) txt D) int enclude -max REAL k-2 sin y-m-d Dr.Tom _001 _2010 Date 3COM sizeof,解 在C语言中,标识符是以字母或下划线开头并由字母、数字或下划线组成的字符序列,并且不能与C语言中的32个关键字同名。因此选项B中的 -max和y-m-d中的“-”不是下划线,即不属于字母、数字和下划线,因此都不是标识符;而选项C中Dr.Tom同样出现标识符不允许出现的字符“ . ”,而且3COM中不是由字母或下划线开头,因此都不是标识符;选项D中出现了C语言

6、中的关键字int和sizeof,因此也不是标识符,只有选项A正确。,4. 分隔符 C语言的分隔符主要有空格、逗号和分号。C语言中单词与单词之间可以用一个或多个空格进行分隔,语句与语句之间用一个分号“ ; ”进行分隔,逗号“ , ”则用于程序定义同类型变量之间、函数参数表中参数之间以及输入输出语句中各个参数之间的分隔。,2.1.2 C语言的数据类型 数据是计算机处理的对象,程序所描述的就是数据及对这些数据的处理步骤。数据的性质是通过数据类型来反映的,高级语言程序中的每一个数据都必须隶属于某一种数据类型。数据类型从本质上定义了该类型的取值范围和可施加于它们的全部运算。C语言根据数据的特点将其分为基

7、本类型、构造类型、指针类型和空类型四类(见图2-1),并通过这些数据类型可以构造出其他数据类型和数据结构。,图2-1 C语言的数据类型,数据类型除了指定数据的取值范围和可施加的运算外,还指明了该数据在内存中的存放方式及所占内存的大小(字节数)。在此仅介绍基本类型,其他数据类型将在后续章节中逐步进行介绍。,C语言基本类型包括:整型、单精度型、双精度型和字符型四种。此外,还可通过类型修饰符来扩充基本类型的含义,以便更准确地适应各种需要。修饰符有long(长型)、short(短型)、signed(有符号)和unsigned(无符号)四种,这些修饰符与基本类型的类型标识符int、float和doubl

8、e组合可表示不同的数值范围及数据所占内存的大小。表2.3给出了基本类型标识符、各数据类型所占内存空间字节数和所表示的数值范围。,表2.3 基本类型的分类及特点,注意,在早期的16位微机和Turbo C中,短整型和无符号短整型数据占1个字节,整型和无符号型数据都占2个字节,长整型和无符号长整型占4个字节。而现在32位微机的VC+ 6.0环境中,短整型和无符号短整型数据占2个字节,整型、无符号型、长整型及无符号长整型数据都占4个字节。了解数据所占空间的办法是采用sizeof运算符来进行检测,如sizeof(long int)则得到long int类型所占字节数。,2.2 常 量,常量是在程序运行过

9、程中,其值恒定不变的量。常量可分为直接常量和符号常量。直接常量也就是日常所说的常数,包括数值常量和字符型常量两种;符号常量则是指用标识符定义的常量,从字面上不能直接看出其类型和值。C语言中常量的分类如图2-2所示。,图2-2 C语言的常量,2.2.1 整型常量、实型常量及符号常量 1. 整型常量 在C语言中,整型常量有十进制、八进制和十六进制三种表示形式。 (1) 十进制整型常量的表示与数学上的整数表示相同。十进制整型常量没有前缀,由09的数字组成。 以下各数是合法的十进制整型常量: 386 -567 65535 2010 以下各数是非法的十进制整型常量: 029 (不能有前导0) 23A (

10、含有非十进制字符),(2) 八进制整型常量的表示形式是以数字0为前缀,后面跟由07的数字组成的八进制数。八进制数通常是无符号数。 以下各数是合法的八进制整型常量: 016 (十进制为14) 0102 (十进制为66) 0177777 (十进制为65535) 以下各数是非法的八进制整型常量: 356 (无前缀0) 02A6 (含有非八进制字符) -0128 (出现了非八进制数8和负号),(3) 十六进制整型常量是以0x或0X为前缀(0x或0X中x或X的前面是数字0,其后跟由09、AF或af的数字组成的十六进制数。 以下各数是合法的十六进制整型常量: 0x2A (十进制为42) 0xA0 (十进制

11、为160) 0xFFFF (十进制为65535) 以下各数是非法的十六进制整型常量: 5AF (无前缀0x) 0x32H (含有非十六进制字符H),在程序中是根据常量的前缀来区分各种进制数的。因此,在书写常量时要避免因前缀弄错而造成结果的不正确。 整型常量中的长整型数据可用L(或l)做后缀表示。例如: 158L (十进制为158) 077L (十进制为63) 0XA5L (十进制为165) 整型常量中的无符号型数据可用U(或u)做后缀表示。例如: 358u 0x38Au 0235U 0XA5Lu 386LU,2. 实型常量 C语言中的实型常量只能用十进制形式表示,不能用八进制或十六进制表示。实

12、型常量只有两种进制表示形式:小数形式和指数形式。 (1) 小数形式由数字和小数点“.”组成(必须有小数点)。例如: -1.85 .426 728. 0.345 0.0 都是十进制小数形式的实数,小数点前或后可以没有数字。,(2) 指数形式由十进制数加阶码标志“e”或“E”以及阶码组成,其一般形式为: aEn 或 aen 其中,a为十进制数,n为十进制整数(n为正数时“ + ”可以省略),其值为a 10n。 以下是合法的实数: 1.234e+12 (等于1.234 1012) 3.7e-2 (等于3.7 10-2) 78E3 (等于78 103),以下是非法的实数: e-5 (阶码“e”前无数字

13、) 58.+e5 (符号位置不对) 2.7E (无阶码) 6.4e-5.8 (阶码为小数) 因此,在阶码“e”或“E”前后必须有数字且“e”或“E”后的数字必须是整数。,注意,一个实数在用指数形式输出时,是按规格化的指数形式输出的,即小数点前面只有一位非0数字。例如2041.567e11的输出为:2.041567e+014;0.001234e-4的输出为1.234e-007。另外在C语言中,实型常量默认为双精度型(即double型),若实型常量后面跟后缀F(或f),则为单精度型(即float型)。,3. 符号常量 在程序中,可以定义一个符号来代表一个常量,这种相应的符号称为符号常量。符号常量实

14、际上就是给值常量起了一个名字。例如,用PI代表圆周率,即3.14159。 使用符号常量,一是可以增加程序的易读性:在程序中若定义一些具有一定意义的符号常量时,则很容易了解其含义,即“见名知义”;例如用PI代表圆周率、Name代表姓名等。二是提高了程序的通用性和可维护性:使用符号常量可以使该常量的修改变得十分方便;例如,一个程序中如果多处出现某个常量,若需修改该常量则对程序所有出现该常量的地方都要进行修改,这种修改比较麻烦且容易遗漏;如果使用符号常量,则只需修改其定义即可,即一改全改,不会出现遗漏。,C语言中是在程序的开始处用编译预处理命令 #define(将在第9章介绍)来定义符号常量的。符号

15、常量的定义形式如下: #define 符号常量名 常量 例如: #define PI 3.14159 #define NUM 35 #define Name “Liu yu”,注意,#define与 #include一样是宏命令而不是C语言语句,故其命令行末尾不能加分号“;”。当程序被编译时,宏命令首先被编译预处理,即用符号常量名后面的常量来替换程序中所有出现的这个符号常量名。此外,符号常量一旦定义,就不能在程序中其他地方给这个符号常量再进行赋值。例如“PI=5.286”;是错误的。,2.2.2 字符常量与字符串常量 1. 字符常量 用一对单引号“ ”括起来的一个字符,称为字符常量。例如,a、

16、0、A、* 都是合法的字符常量(注意,a 和 A 是不同的字符常量)。字符常量在内存中存储的并不是字符本身,而是字符的代码,称之为ASCII码。如 a 的ASCII码是97,而 A 的ASCII码则是65。,除了以上形式的字符常量外,C语言还定义了一些特殊的字符常量,即以反斜杠字符“”开头的字符序列,称为转义字符。转义字符是一种特殊的字符常量,即将“”后的字符或字符序列,改变其字符原有的含义而转化为特定的含义,故称“转义”字符。例如转义字符 n 不再表示字母“n”而作为“换行”符使用。 常用的转义字符如表2.4所示。,表2.4 转义字符及其含义,使用字符常量时需要注意以下几点: (1) 字符常量只能用单引号“ ”括起来,而

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

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

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