语言程序设计初步.ppt
《语言程序设计初步.ppt》由会员分享,可在线阅读,更多相关《语言程序设计初步.ppt(109页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、大大 学学 计计 算算 机机 应应 用用 基基 础础安徽师范大学数学计算机科学学院安徽师范大学数学计算机科学学院第10章 C语言程序设计初步1大大 学学 计计 算算 机机 应应 用用 基基 础础安徽师范大学数学计算机科学学院安徽师范大学数学计算机科学学院第第10章章 C语言程序设计初步语言程序设计初步 从本章开始我们正式进入从本章开始我们正式进入C语言程序设计的学习,语言程序设计的学习,也许大家会问:也许大家会问:为什么我们要学习为什么我们要学习C语言呢?语言呢?理由理由1:因为:因为C语言流行语言流行.理由理由2:因为因为C语言在各种程序考试中必考。语言在各种程序考试中必考。理由理由3:因为
2、它是必修课,是老师逼的,不学不能:因为它是必修课,是老师逼的,不学不能拿学分拿学分 理由理由n:别急!让我想想别急!让我想想别急!让我想想别急!让我想想 这些理由都只是从表面上来回答,其实要真正来回答这一问题,这些理由都只是从表面上来回答,其实要真正来回答这一问题,这些理由都只是从表面上来回答,其实要真正来回答这一问题,这些理由都只是从表面上来回答,其实要真正来回答这一问题,我们有必要了解程序设计语言的发展历史及其特点,知道我们有必要了解程序设计语言的发展历史及其特点,知道我们有必要了解程序设计语言的发展历史及其特点,知道我们有必要了解程序设计语言的发展历史及其特点,知道C C C C语言是属
3、语言是属语言是属语言是属于哪种类型的语言;于哪种类型的语言;于哪种类型的语言;于哪种类型的语言;C C C C语言是如何产生和发展的,语言是如何产生和发展的,语言是如何产生和发展的,语言是如何产生和发展的,C C C C语言的特点有哪些,语言的特点有哪些,语言的特点有哪些,语言的特点有哪些,它应用在哪些方面等,这样我们就可以做到学习目的明确,才能有意它应用在哪些方面等,这样我们就可以做到学习目的明确,才能有意它应用在哪些方面等,这样我们就可以做到学习目的明确,才能有意它应用在哪些方面等,这样我们就可以做到学习目的明确,才能有意识地去学好识地去学好识地去学好识地去学好C C C C语言程序设计。
4、语言程序设计。语言程序设计。语言程序设计。2大大 学学 计计 算算 机机 应应 用用 基基 础础安徽师范大学数学计算机科学学院安徽师范大学数学计算机科学学院了解程序设计语言的发展及其特点;了解程序设计语言的发展及其特点;掌握机器语言、汇编语言和高级语言的差异;掌握机器语言、汇编语言和高级语言的差异;了解了解C C语言的发展历史及特点和应用;语言的发展历史及特点和应用;掌握掌握C C语言程序的基本结构;语言程序的基本结构;掌握编写掌握编写C C程序的基本步骤和调试过程。程序的基本步骤和调试过程。u学习目标学习目标 3大大 学学 计计 算算 机机 应应 用用 基基 础础安徽师范大学数学计算机科学学
5、院安徽师范大学数学计算机科学学院u学习内容学习内容 引论引论 算法基础算法基础 基本数据类型基本数据类型 顺序结构程序设计顺序结构程序设计 选择结构程序设计选择结构程序设计 循环结构程序设计循环结构程序设计 4大大 学学 计计 算算 机机 应应 用用 基基 础础安徽师范大学数学计算机科学学院安徽师范大学数学计算机科学学院10.1引论 u程序设计语言的发展经历了三个阶段:程序设计语言的发展经历了三个阶段:机器语言是用二进制表示的,计算机能直接识别和执行的语言 如:10000000(加)10010000(减),机器语言执行速度最快。由于用二进制表示,因而程序可读性差,非专业人员难于掌握 二进制指令
6、通过符号化 如 ADD A,B汇编程序 高级语言表达方式接近被描述的问题,接近于高级语言表达方式接近被描述的问题,接近于自然语言和数学表达式,易于人们接受和掌握自然语言和数学表达式,易于人们接受和掌握 5大大 学学 计计 算算 机机 应应 用用 基基 础础安徽师范大学数学计算机科学学院安徽师范大学数学计算机科学学院1.C1.C1.C1.C语言发展史语言发展史语言发展史语言发展史Combined Programming Combined Programming Language Language 19631963年,剑桥大学年,剑桥大学年,剑桥大学年,剑桥大学 19671967年,剑桥大学的年,
7、剑桥大学的年,剑桥大学的年,剑桥大学的Matin Matin RichardsRichards对对对对CPLCPL语言进行了简化语言进行了简化语言进行了简化语言进行了简化 19701970年,美国贝尔实验室的年,美国贝尔实验室的年,美国贝尔实验室的年,美国贝尔实验室的Ken Ken ThompsonThompson将将将将BCPLBCPL进行了修改进行了修改进行了修改进行了修改 将将CPLCPL语语言言煮干煮干,提炼出它提炼出它的精华的精华19731973年,年,年,年,B B语言也给人语言也给人语言也给人语言也给人“煮煮煮煮”了了了了一下,美国贝尔实验室的在一下,美国贝尔实验室的在一下,美国
8、贝尔实验室的在一下,美国贝尔实验室的在B B语语语语言的基础上最终设计出了一种新言的基础上最终设计出了一种新言的基础上最终设计出了一种新言的基础上最终设计出了一种新的语言的语言的语言的语言 B BC CPLPL的第二个的第二个字母作为这种字母作为这种语言的名字,语言的名字,这就是这就是C C语言语言 10.1.1 语言概述语言概述在在在在C C的基础上,的基础上,的基础上,的基础上,19831983年又由贝尔实年又由贝尔实年又由贝尔实年又由贝尔实验室的验室的验室的验室的Bjarne StroustrupBjarne Stroustrup推出了推出了推出了推出了C+C+6大大 学学 计计 算算
9、机机 应应 用用 基基 础础安徽师范大学数学计算机科学学院安徽师范大学数学计算机科学学院C C语言发展史语言发展史uu产生背景产生背景产生背景产生背景uu产生过程产生过程产生过程产生过程 时间时间时间时间:1972:1972:1972:19721973197319731973 地点地点地点地点:美国贝尔实验室美国贝尔实验室美国贝尔实验室美国贝尔实验室 目的目的目的目的:UNIX:UNIX:UNIX:UNIX操作系统操作系统操作系统操作系统 设计人设计人设计人设计人:Ken.ThompsonKen.ThompsonKen.ThompsonKen.Thompson和和和和uuC C C C标准标准
10、标准标准 标准标准标准标准C:K&RC:K&RC:K&RC:K&R合著合著合著合著The C Programming LanguageThe C Programming LanguageThe C Programming LanguageThe C Programming Language ANSI C:1983 ANSI C:1983 ANSI C:1983 ANSI C:1983年年年年 87 ANSI C:198787 ANSI C:198787 ANSI C:198787 ANSI C:1987年年年年 1990199019901990年国际标准的年国际标准的年国际标准的年国际标准的A
11、NSI CANSI CANSI CANSI C7大大 学学 计计 算算 机机 应应 用用 基基 础础安徽师范大学数学计算机科学学院安徽师范大学数学计算机科学学院2.C2.C语言的特点语言的特点(1 1)高效性:)高效性:)高效性:)高效性:C C程序往往紧凑且运行速度快。程序往往紧凑且运行速度快。程序往往紧凑且运行速度快。程序往往紧凑且运行速度快。(2 2)移植性:)移植性:)移植性:)移植性:C C程序不经修改或很少修改就可以到其他程序不经修改或很少修改就可以到其他程序不经修改或很少修改就可以到其他程序不经修改或很少修改就可以到其他系统上运行。系统上运行。系统上运行。系统上运行。(3 3)运
12、算符丰富:有算术、关系、逻辑、位、自增)运算符丰富:有算术、关系、逻辑、位、自增)运算符丰富:有算术、关系、逻辑、位、自增)运算符丰富:有算术、关系、逻辑、位、自增/自减、自减、自减、自减、赋值运算符等等。赋值运算符等等。赋值运算符等等。赋值运算符等等。(4 4)数据结构丰富:数据类型有整型、实型、字符、数)数据结构丰富:数据类型有整型、实型、字符、数)数据结构丰富:数据类型有整型、实型、字符、数)数据结构丰富:数据类型有整型、实型、字符、数组、指针、结构体等,能实现如链表、树、栈等结构组、指针、结构体等,能实现如链表、树、栈等结构组、指针、结构体等,能实现如链表、树、栈等结构组、指针、结构体
13、等,能实现如链表、树、栈等结构运算。运算。运算。运算。(5 5)对硬件操作:能直接访问内存的物理地址,并进行)对硬件操作:能直接访问内存的物理地址,并进行)对硬件操作:能直接访问内存的物理地址,并进行)对硬件操作:能直接访问内存的物理地址,并进行位操作。位操作。位操作。位操作。(6 6)自由度大:语法限制不严格。如:不检查数组下标)自由度大:语法限制不严格。如:不检查数组下标)自由度大:语法限制不严格。如:不检查数组下标)自由度大:语法限制不严格。如:不检查数组下标是否越界,整型与字符型可通用,条件可用是否越界,整型与字符型可通用,条件可用是否越界,整型与字符型可通用,条件可用是否越界,整型与
14、字符型可通用,条件可用0 0和非和非和非和非0 0表表表表示假与真,指针操作灵活等。示假与真,指针操作灵活等。示假与真,指针操作灵活等。示假与真,指针操作灵活等。8大大 学学 计计 算算 机机 应应 用用 基基 础础安徽师范大学数学计算机科学学院安徽师范大学数学计算机科学学院v1.语言的字符集语言的字符集v2.标识符标识符:v3.关键字关键字v4.运算符运算符v5.分隔符分隔符v6.注释符注释符10.1.2 基本语法成分基本语法成分字符是组成语言的最基本的元素。语言字符集由字字符是组成语言的最基本的元素。语言字符集由字字符是组成语言的最基本的元素。语言字符集由字字符是组成语言的最基本的元素。语
15、言字符集由字母,数字,空格,标点和特殊字符组成。母,数字,空格,标点和特殊字符组成。母,数字,空格,标点和特殊字符组成。母,数字,空格,标点和特殊字符组成。(1 1)字母:大小写字母。)字母:大小写字母。)字母:大小写字母。)字母:大小写字母。(2 2)数字:)数字:)数字:)数字:0 09 9共共共共1010个个个个(3 3)空白符空格符、制表符、换行符等统称为空)空白符空格符、制表符、换行符等统称为空)空白符空格符、制表符、换行符等统称为空)空白符空格符、制表符、换行符等统称为空白符。空白符只在字符常量和字符串常量中起作用。白符。空白符只在字符常量和字符串常量中起作用。白符。空白符只在字符
16、常量和字符串常量中起作用。白符。空白符只在字符常量和字符串常量中起作用。在其它地方出现时,只起间隔作用,编译程序对它们在其它地方出现时,只起间隔作用,编译程序对它们在其它地方出现时,只起间隔作用,编译程序对它们在其它地方出现时,只起间隔作用,编译程序对它们忽略,但在程序中适当的地方使用空白符将增加程序忽略,但在程序中适当的地方使用空白符将增加程序忽略,但在程序中适当的地方使用空白符将增加程序忽略,但在程序中适当的地方使用空白符将增加程序的清晰性和可读性。的清晰性和可读性。的清晰性和可读性。的清晰性和可读性。(4 4)标点和特殊字符)标点和特殊字符)标点和特殊字符)标点和特殊字符 主要有主要有主
17、要有主要有 !#%&+*/!#%&+*/=|.,:;?”()=|.,:;?”()等等。等等。等等。等等。在程序中使用的变量名、函数名、标号等统称为标识在程序中使用的变量名、函数名、标号等统称为标识符,用来标识各种程序成分。除库函数的函数名由系符,用来标识各种程序成分。除库函数的函数名由系统定义外,其余都由用户自定义。统定义外,其余都由用户自定义。C语言规定,标识语言规定,标识符只能是由字母符只能是由字母(AZ,az)、数字、数字(09)、下划线、下划线(_)组成的字符串,并且其第一个字符必须是字母或下组成的字符串,并且其第一个字符必须是字母或下划线。划线。在使用标识符时还必须注意以下几点:在使
18、用标识符时还必须注意以下几点:(1)在标识符中,大小写是有区别的。例如在标识符中,大小写是有区别的。例如BOOK和和book 是两个不同的标识符。习惯上符号常量用大写是两个不同的标识符。习惯上符号常量用大写字母表示,而变量名等用小写字母表示。字母表示,而变量名等用小写字母表示。(2)标识符虽然可由程序员随意定义,但不能与关键标识符虽然可由程序员随意定义,但不能与关键字同名,也不能与系统预先定义的标准标识符(如标字同名,也不能与系统预先定义的标准标识符(如标准函数)同名准函数)同名 关键字是由语言规定的具有特定意义的字符串,通关键字是由语言规定的具有特定意义的字符串,通常也称为保留字。如类型说明
19、符常也称为保留字。如类型说明符int,double等;语句等;语句特征特征if、switch、while等;预处理命令等;预处理命令include、define等。关键字是构成等。关键字是构成C语言的语法基础,用户定语言的语法基础,用户定义的标识符不应与关键字相同,也不能对关键字进行义的标识符不应与关键字相同,也不能对关键字进行重新定义。重新定义。语言中含有相当丰富的运算符。运算符与变量、函语言中含有相当丰富的运算符。运算符与变量、函数一起组成表达式,表示各种运算功能。运算符由一数一起组成表达式,表示各种运算功能。运算符由一个或多个字符组成。根据参加运算对象的个数,运算个或多个字符组成。根据参
20、加运算对象的个数,运算符可分为单目运算符、双目运算符和三目运算符。符可分为单目运算符、双目运算符和三目运算符。C语言中的分隔符有逗号和空格两种,逗号主要用在语言中的分隔符有逗号和空格两种,逗号主要用在类型说明和函数参数表中,分隔各个变量。空格多用类型说明和函数参数表中,分隔各个变量。空格多用于语句各单词之间,作间隔符。在关键字、标识符之于语句各单词之间,作间隔符。在关键字、标识符之间必须要有一个以上的空格符作间隔,间必须要有一个以上的空格符作间隔,否则将会出现否则将会出现语法错误。例如把语法错误。例如把“int a;”,写成,写成“inta;”,C编译编译器会把器会把“inta”当成一个标识符
21、处理,其结果必然出当成一个标识符处理,其结果必然出错。错。注释符是以注释符是以“/*”开头并以开头并以“*/”结尾的串。在结尾的串。在“/*”和和“*/”之间的即为注释。程序编译时,不对之间的即为注释。程序编译时,不对注释作任何处理。注释可出现在程序中的任何位置。注释作任何处理。注释可出现在程序中的任何位置。注释用来向用户提示或解释程序的意义。在调试程序注释用来向用户提示或解释程序的意义。在调试程序时,对暂不使用的语句也可用注释符括起来,使编译时,对暂不使用的语句也可用注释符括起来,使编译跳过不作处理,待调试结束后再去掉注释符。跳过不作处理,待调试结束后再去掉注释符。9大大 学学 计计 算算
22、机机 应应 用用 基基 础础安徽师范大学数学计算机科学学院安徽师范大学数学计算机科学学院标识符练习标识符练习1、下列选项中,可以作为语言标识符的是(、下列选项中,可以作为语言标识符的是()A)3stu B)#stu C)stu3 D)stu.32、下列选项中,不可以作为语言标识符的是(、下列选项中,不可以作为语言标识符的是()A)num B)turbo_c C)printf D)student33、以下不能定义为用户标识符的是、以下不能定义为用户标识符的是_。A)Main B)_0 C)_int D)int4、以下叙述中错误的是、以下叙述中错误的是()A)用户所定义的标识符允许使用关键字)用户
23、所定义的标识符允许使用关键字 B)用户所定义的标识符应尽量做到)用户所定义的标识符应尽量做到“见名知意见名知意”C)用户所定义的标识符必须以字母或下划线开头)用户所定义的标识符必须以字母或下划线开头 D)用户定义的标识符中,大、小写字母代表不同标识)用户定义的标识符中,大、小写字母代表不同标识10大大 学学 计计 算算 机机 应应 用用 基基 础础安徽师范大学数学计算机科学学院安徽师范大学数学计算机科学学院5、以下不合法的用户标识符是、以下不合法的用户标识符是()A)j2_KEY B)Double C)4d D)_8_6、合法的语言标识符是(、合法的语言标识符是()。)。A)_a1 B)a+b
24、 C)3abc D)AB,CD7、以下选项中不合法的用户标识符是:(、以下选项中不合法的用户标识符是:()A)_xyz B)Int C)a_123 D)1238、以下选项中合法的用户标识符是:(、以下选项中合法的用户标识符是:()A)_123 B)int C)si%D)1_ads9、以下选项中合法的用户标识符是:(、以下选项中合法的用户标识符是:()A)signed B)printf C)aa$D)a1.11大大 学学 计计 算算 机机 应应 用用 基基 础础安徽师范大学数学计算机科学学院安徽师范大学数学计算机科学学院10.1.3 C10.1.3 C语言程序的基本结构语言程序的基本结构 了解了
25、了解了了解了了解了C C C C语言的基本特性及其应用以后,接下来就来看看语言的基本特性及其应用以后,接下来就来看看语言的基本特性及其应用以后,接下来就来看看语言的基本特性及其应用以后,接下来就来看看C C C C语言程序是什么样子。一个语言程序是什么样子。一个语言程序是什么样子。一个语言程序是什么样子。一个C C C C语言程序可以是非常简单的,也语言程序可以是非常简单的,也语言程序可以是非常简单的,也语言程序可以是非常简单的,也可以是特别复杂的,这取决于程序所要实现的功能。我们先可以是特别复杂的,这取决于程序所要实现的功能。我们先可以是特别复杂的,这取决于程序所要实现的功能。我们先可以是特
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 初步
限制150内