1、C+C+程序设计程序设计中国高等院校计算机基础教育课程体系规划教材中国高等院校计算机基础教育课程体系规划教材谭浩强谭浩强 编著编著第1页诚信诚信n端正学习态度、调动学习兴趣端正学习态度、调动学习兴趣 提倡讨论,但禁止剽窃提倡讨论,但禁止剽窃 能能够够讨讨论论思思绪绪,请请同同学学看看算算法法逻逻辑辑问问题题和和 效效率率问题。问题。但要亲自动手实现。但要亲自动手实现。发发觉觉剽剽窃窃,则则剽剽窃窃者者和和被被剽剽窃窃者者此此次次作作业业或或上上机机题题倒倒扣扣二二分分之之一一分分,以以后后作作业业题题会会得得到到重重点点检验。严重期评将给予不及格处理。检验。严重期评将给予不及格处理。第2页按时
2、提交作业,禁止剽窃按时提交作业,禁止剽窃n全全部部书书面面作作业业和和上上机机作作业业都都必必须须在在指指定定期期限限内内完完成成并提交并提交n普普通通周周三三晚晚上上9点点之之前前交交作作业业。除除非非不不可可抗抗拒拒客客观观原原因因,请请严严格格按按提提交交时时间间完完成成书书面面作作业业和和上上机机作作业业。比如,一个满分为比如,一个满分为10分作业题,记分标准为:分作业题,记分标准为:(1)按时提交,满分可达)按时提交,满分可达10分(个别加分);分(个别加分);(2)延迟)延迟3天之内提交,满分可达天之内提交,满分可达7分;分;(3)延迟)延迟7天之内提交,满分可达天之内提交,满分可
3、达3分;分;(4)7天之后提交或不交,得分天之后提交或不交,得分0分。分。(5)剽窃得)剽窃得 5分。分。第3页书面作业提交要求书面作业提交要求1)以以“学号名字学号名字_作业序号作业序号_P页号页号_题号题号”命名文件命名文件2)每每次次作作业业,都都在在作作业业本本或或电电子子稿稿word文文档档中中写写上上“我我确确保保没没有有剽剽窃窃他他人人作作业业”老老实实确确保保。不不然然,计零分或依据剽窃情况倒扣分。计零分或依据剽窃情况倒扣分。第4页上机题提交要求上机题提交要求上机作业以上机作业以“学号姓名学号姓名_上机序号上机序号_p页号页号_题号题号”命命名文件,如名文件,如”0030809
4、6张宁张宁_上机上机1_P89_2.cpp”在该文件开头以注释形式写上老实代码确保在该文件开头以注释形式写上老实代码确保 程序中要有足够注释程序中要有足够注释第5页第第1章章 C+初步知识初步知识第第2章章 数据类型与表示式数据类型与表示式第第1 1篇篇基基 本本 知知 识识第6页第第1章章 C+初步知识初步知识*1.1 从从C到到C+1.2 最简单最简单C+程序程序 1.3 C+程序组成和书写形式程序组成和书写形式 1.4 C+程序编写和实现程序编写和实现 1.5 关于关于C+上机实践上机实践第7页C语言是语言是1972年由美国贝尔试验室年由美国贝尔试验室D.M.Ritchie研制研制成功。
5、成功。大多数系统软件和许多应用软件都是用大多数系统软件和许多应用软件都是用C语言编写。语言编写。*1.1 从从C到到C+第8页*1.1 从从C到到C+C+是由是由AT&T Bell(贝尔贝尔)试验室试验室Bjarne Stroustrup博士及其同事于博士及其同事于20世纪世纪80年代初在年代初在C语言基础上开发成功。语言基础上开发成功。C+保留了保留了C语言原有全部优点,增加了面向对语言原有全部优点,增加了面向对象机制。象机制。第9页*1.1 从从C到到C+C+对对C“增强增强”,表现在两个方面:,表现在两个方面:(1)在原来面向过程机制基础上,对在原来面向过程机制基础上,对C语言功效语言功
6、效做了不少扩充。做了不少扩充。(2)增加了面向对象机制。增加了面向对象机制。面向对象程序设计,是针对开发较大规模程序而面向对象程序设计,是针对开发较大规模程序而提出来,目标是提升软件开发效率。提出来,目标是提升软件开发效率。第10页*1.1 从从C到到C+面向对象和面向过程不是矛盾,而是各有用途、面向对象和面向过程不是矛盾,而是各有用途、互为补充。互为补充。学习学习C+,既要会利用既要会利用C+进行面向过程结构进行面向过程结构化程序设计,也要会利用化程序设计,也要会利用C+进行面向对象程进行面向对象程序设计。序设计。第11页例例1.1 例例1.41.2 最简单最简单C+程序程序第12页C+程序
7、结构和书写格式归纳以下:程序结构和书写格式归纳以下:(1)一个一个C+程序能够由一个程序单位或多个程程序能够由一个程序单位或多个程序单位组成。序单位组成。每一个程序单位作为一个文件。在程序编译时,每一个程序单位作为一个文件。在程序编译时,编译系统分别对各个文件进行编译,所以,一个文编译系统分别对各个文件进行编译,所以,一个文件是一个编译单元。件是一个编译单元。1.3 C+程序组成和书写形式程序组成和书写形式第13页1.3 C+程序组成和书写形式程序组成和书写形式(2)在一个程序单位中,能够包含以下几个部)在一个程序单位中,能够包含以下几个部分:分:预处理命令。预处理命令。全局申明部分全局申明部
8、分(在函数外申明部分在函数外申明部分)。在这部分。在这部分中包含对用户自己定义数据类型申明和程序中中包含对用户自己定义数据类型申明和程序中所用到变量定义。所用到变量定义。函数。函数是实现操作部分,所以函数是程序函数。函数是实现操作部分,所以函数是程序中必须有和最基本组成部分。每一个程序必须中必须有和最基本组成部分。每一个程序必须包含一个或多个函数,其中必须有一个包含一个或多个函数,其中必须有一个(而且而且只能有一个只能有一个)主函数主函数(main函数函数)。第14页1.3 C+程序组成和书写形式程序组成和书写形式(3)一个函数由两部分组成)一个函数由两部分组成:函数首部,即函数第一行。包含函
9、数名、函数函数首部,即函数第一行。包含函数名、函数类型、函数属性、函数参数类型、函数属性、函数参数(形参形参)名、参数类名、参数类型。型。一个函数名后面必须跟一对圆括号,一个函数名后面必须跟一对圆括号,函数参数能函数参数能够缺省,如够缺省,如int main()。函数体,即函数首部下面大括号内部分。函数体,即函数首部下面大括号内部分。第15页(4)语句包含两类语句包含两类,C+语句必须以分号结束。语句必须以分号结束。申明语句,申明语句,执行语句。执行语句。(5)一个)一个C+程序总是从程序总是从main函数开始执行,而函数开始执行,而不论不论main函数在整个程序中位置怎样。函数在整个程序中位
10、置怎样。(6)类)类(class)是是C+新增加主要数据类型,在一新增加主要数据类型,在一个类中能够包含数据组员和组员函数,他们能够被个类中能够包含数据组员和组员函数,他们能够被指定为私有指定为私有(private)和公用和公用(public)属性。私有属性。私有数据组员和组员函数只能被本类组员函数所调用。数据组员和组员函数只能被本类组员函数所调用。第16页(7)C+程序书写格式自由,一行内能够写几个程序书写格式自由,一行内能够写几个语句,语句,一个语句能够分写在多行上。一个语句能够分写在多行上。(8)一个好、有使用价值源程序都应该加上必要)一个好、有使用价值源程序都应该加上必要注释,以增加程
11、序可读性。注释,以增加程序可读性。能够用能够用“/*/”对对C+程序中任何部分作注释。程序中任何部分作注释。用用“/”作注释时,有效范围只有一行,即本行作注释时,有效范围只有一行,即本行有效,不能跨行。有效,不能跨行。第17页1.4 C+程序编写和实现程序编写和实现第18页 能够使用不一样能够使用不一样C+编译系统,在不一样环境编译系统,在不一样环境下编译和运行一个下编译和运行一个C+程序。程序。选择一个选择一个(如能做到两种更加好如能做到两种更加好)C+编译系统,编译系统,在该环境下输入和运行习题中程序,掌握上机方法在该环境下输入和运行习题中程序,掌握上机方法和步骤。和步骤。1.5 关于关于C+上机实践上机实践第19页作业作业 P16-P18 课堂解答课堂解答 上机上机8,9 第20页