




已阅读5页,还剩68页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程名称:C+程序设计,主讲教师:冯玉芬E_mail:fengyufen,使用教材:C+语言基础教程(第2版)吕凤翥主编著清华大学出版社参考书:(1)谭浩强著,C程序设计(第二版),清华大学出版社,2003年(2)C+程序设计教程钱能著清华大学出版社(3)邵维忠,杨芙清,面向对象的系统分析清华大学出版,1998(4)BruceEckel著,刘宗田等译,C+编程思想(ThinkinginC+),机械工业出版社,2004(5)王超著,C+程序设计,地质出版社,2006年,教材与参考书,1.建立基本的计算机程序设计概念体系和基本的程序设计方法2.理解和掌握C+语言的基本语法和语义,掌握面向对象的思想,掌握面向对象程序设计的方法。3.逐步提高学生的编程能力和调试程序的能力,为后面课程的学习打好基础。,教学目标,学习方法,学习每章内容时,注意对基本概念的理解,掌握每章的主要内容。注意了解、理解和掌握三个层次的要求;每堂结束布置的习题一定要独立完成。这是进一步掌握所学内容的一个重要途径;上机环境是VC6.0,要求进一步掌握对C+语言程序的调试方法。,课程内容:,1.C+语言概述2.数据类型和表达式3.预处理和语句4.函数和作用域5.类与对象6.继承性和派生类7.多态性和虚函数8.C+语言的I/O流库,1)面向对象程序设计的有关概念(理解)2)C+语言是一种面向对象的程序设计语言(了解)3)C+语言的词法及语法规则(掌握)4)C+程序结构的特点(掌握)5)C+程序的实现(掌握),1.C+语言概述,返回,课程内容:,1)基本数据类型(掌握)2)常量和变量(掌握)3)数组(掌握)4)枚举数据类型(掌握)5)指针和引用(掌握)6)运算符(掌握)7)表达式(掌握)8)类型定义(掌握)9)结构和联合(掌握),2.数据类型和表达式,返回,课程内容:,1)预处理功能(理解)2)语句(掌握)3)选择语句(掌握)4)循环语句(掌握)5)转向语句,3.预处理和语句,返回,课程内容:,1)函数的定义与说明(掌握)2)函数的调用(掌握)3)函数参数(掌握)4)内联函数(掌握)5)函数重载(掌握)6)函数的嵌套调用和递归调用(掌握)7)作用域(掌握)8)使用C+系统函数(掌握)9)函数模板(掌握),4.函数和作用域,返回,课程内容:,1)类的定义(掌握)2)对象的定义(掌握)3)对象的初始化(掌握)4)成员函数的特性(掌握)5)静态成员(掌握)6)友元(掌握)7)类的作用域(理解)8)局部类和嵌套类(了解)9)对象的生存期(理解)10)对象指针和对象引用(理解)11)对象数组和对象指针数组(理解)12)常类型(理解)13)子对象和堆对象(了解)14)类型转换(了解)15)类模板(了解),5.类与对象,返回,课程内容:,1)基类和派生类(掌握)2)单继承(掌握)3)多继承(理解)4)虚基类(了解),6.继承性和派生类,返回,课程内容:,1)函数重载(掌握)2)运算符号重载(掌握)3)静态联编和动态联编(了解)4)虚函数(了解)5)纯虚函数和抽象类(了解),7.多态性和虚函数,返回,课程内容:,1)屏幕输出(掌握)2)键盘输入(掌握)3)插入符和提取符的重载(理解)4)格式化输入和输出(理解)5)磁盘文件的输入和输出(掌握)6)字符串流(理解),8.C+语言的I/O流库,返回,课程内容:,本章教学内容:,1.计算机程序设计语言的发展(了解)2.程序设计方法的发展(了解)3.面向对象的基本概念(理解)4.信息的表示与存储(理解)5.C+语言的词法及语法规则(掌握)6.编写第一个C+程序(掌握)7.程序的实现过程(理解),1.计算机程序设计语言的发展,1.计算机程序设计语言的发展,计算机的工作是用程序来控制的程序是指令的集合。指令是计算机可以识别的命令。,机器语言汇编语言高级语言,机器语言,由计算机硬件系统可以识别的二进制指令组成的语言称为机器语言。计算机发展的初期,软件工程师们只能用机器语言来编写程序。这一阶段,在人类的自然语言和计算机编程语言之间存在着巨大的鸿沟。如101111001111缺点:难懂不易修改移植性差,1.计算机程序设计语言的发展,汇编语言,汇编语言将机器指令映射为一些可以被人读懂的助记符,如ADD、SUB等。此时编程语言与人类自然语言间的鸿沟略有缩小,但仍与人类的思维相差甚远。因为它的抽象层次太低,程序员需要考虑大量的机器细节。如:ADDCXDX将DX的内容加进CX需要汇编,变成目标程序。,1.计算机程序设计语言的发展,高级语言屏蔽了机器的细节,提高了语言的抽象层次,程序中可以采用具有一定涵义的数据命名和容易理解的执行语句。这使得在书写程序时可以联系到程序所描述的具体事物。如:if(yx1y1x2y2;d1=diantance(x1,y1,x2,y2);cout两个整数点的距离:d1复数的加法。,多态性(一对多的状态),3.面向对象的基本概念,封装要求一个对象应具备明确的功能,并具有接口以便和其他对象相互作用。继承就是一个对象可以获得另一个对象的特征。多态性不同的对象可以调用相同名称的函数,并可导致完全不同行为的现象称为多态性。面向对象的方法可归纳为如下几点(1)将客观事物中抽象出的数据和方法构成一个集合体,即对象(2)将相同类型的对象抽象出共性,形成类(3)类是一个封装体,数据通过类的方法来操作,数据在类外不可见,无法进行访问(4)类通过接口与外界发生联系(5)对象之间通过消息通信,3.面向对象的基本概念,面向对象的程序设计框架中,类是程序的基本单元,C+程序的面向对象程序设计框架如下:类1的定义类2的定义类n的定义类1的成员函数定义类2的成员函数定义类n的成员函数定义,3.面向对象的基本概念,#includeclassLpublic:voidInitL(intx,inty)X=x;Y=y;voidMove(intx,inty)X+=x;Y+=y;intGetX()returnX;intGetY()returnY;private:intX,Y;classR:publicLpublic:voidInitR(intx,inty,intw,inth)InitL(x,y);W=w;H=h;intGetW()returnW;intGetH()returnH;private:intW,H;classV:publicRpublic:voidfun()Move(3,2);,3.面向对象的基本概念,voidmain()Vv;v.InitR(10,20,30,40);v.fun();coutv.GetX(),v.GetY(),v.GetW(),v.GetH()y;Doublez=x+y;Cout“x+y=”zendl;,6.简单的C+程序,(2)C+程序的组成部分预处理命令输入输出语句(不同于C语言)函数语句变量和常量(常量定义不同于C语言)其他,6.简单的C+程序,(3)C+程序的书写格式,基本原则一行一般写一条语句书写程序时要尽量提高可读性每个大括号占一行,并与使用大括号的语句对齐。大括号里的语句采用缩格书写方式,一般缩进两个格如:#includevoidmain()inta,b;a=5;b=7;cout“a*b=”a*bendl;,6.简单的C+程序,c+源程序的实现一般要经过编辑、编译、运行,源程序、目标程序、翻译程序三种不同类型的翻译程序:汇编程序、编译程序、解释程序程序的开发过程编辑、编译、连接、运行调试,7.程序的实现过程,基本术语,源程序:用源语言写的,有待翻译的程序目标程序:也称为结果程序,是源程序通过翻译程序加工以后所生成的程序。翻译程序:是指一个把源程序翻译成等价的目标程序的程序。,7.程序的实现过程,基本术语三种不同类型的翻译程序,汇编程序:其任务是把用汇编语言写成的源程序,翻译成机器语言形式的目标程序。编译程序:若源程序是用高级程序设计语言所写,经翻译程序加工生成目标程序,那么,该翻译程序就称为“编译程序”。解释程序:这也是一种翻译程序,同样是将高级语言源程序翻译成机器指令。它与编译程序不同点就在于:它是边翻译边执行的,即输入一句、翻译一句、执行一句,直至将整个源程序翻译并执行完毕。,7.程序的实现过程,程序的开发实现过程,编辑将源程序输入到计算机中,生成后缀为cpp的磁盘文件。编译将程序的源代码转换为机器语言代码。将多个源程序文件以及库中的某些文件连在一起,生成一个后缀为exe的可执行文件。运行调试,7.程序的实现过程,7.程序的实现过程,1.在c+中,实现封装性需要借助于()A)枚举B)类C)数组D)函数2)关于面向对象的程序设计方法,下列说法正确的是()A)“封装性”指的是将不同类型的相关数据组合在一起,作为一个整体进行处理B)“多态性”指的是对象的状态会根据运行时要求自动变化C)基类的私有成员在派生类中不可访问,也不占有内存D)在面向对象的程序设计中,结构化程序设计方法仍有着重要作用3)c+语言的基本符号包括字母、()与特殊符号4)下列字符串中正确的标识符是()A)foo-1B)2bC)newD)_2565)下列符号中不能作为c+标识符的是()A)_wangB)tempC)elseD)quality,本章习题,6)在程序中固定不变的值称为()A)常量B)变量C)关键字D)数组7)下列不属于C+运算符的是()A)+B)#c)*D)%8)在C+的结构化程序设计框架中,程序基本组成单元是()A)类B)对象C)结构体D)函数9)一个c+程序的开发步骤通常包括编辑、()、连接、运行和调试10)下列关于C+集成开发环境使用中,不正确的是()A)VisualC+6.0集成开发环境利用项目的概念组织和管理程序开发工作B)VisualC+6.0中工作区文件的扩展名是.dswC)集成开发环境下,不能进行编译、链接和运行D)若退出集成开发环境,需要先进入才可以执行文件修改等操作,本章习题,11)下列关于C+与C语言关系的描述中错误的是()A)C+是C语言的超集B)C+对C语言进行了扩充C)C+包含C语言的全部语法特征D)C+与C语言都是面向对象的程序设计语言12)下列运算符中,既可做单目运算符,又可以做双目运算符的是()A)newB)+C)=D)&13)VisualC+中,行注释的开始标志符是()A)B)*/C)/D)/*14)下列关于结构化程序设计框架的叙述中正确的是()A)类是程序的基本组成单元B)结构化程序设计的核心思想是“自底向上,逐步集成”C)函数是整个程序的入口
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年物资储备仓库信息技术模拟题与答案详解
- 2025年护士执业资格考试模拟题集及考点解析
- 2025年电子商务行业招聘面试题解析
- 2025年玻璃熔化工中级面试题预测与解析
- 2025年特岗教师招聘面试初中数学备考攻略及模拟题解析
- 2025年英语翻译硕士考试模拟试题及解析
- 2025年政府机关公开招聘工作人员考试模拟试题及答题策略
- 2025年大数据分析师高级技能测评试题集
- 2025年物流管理专业面试技巧与常见问题解答
- 甲骨文文字演变
- 2023年安徽师范大学医院高校医学专业毕业生招聘考试历年高频考点试题含答案解析
- YY 0271.2-2009牙科水基水门汀第2部分:光固化水门汀
- GB/T 18341-2021地质矿产勘查测量规范
- 三查四定(含详细内容介绍)课件
- 企业生产安全隐患排查奖励台账
- oh卡牌理论-课件
- 合同工期管理台账
- 赏识你的学生
- 心衰病患者护理查房课件
- TSG11-2020 锅炉安全技术规程
- 哲学导论(完整版)
评论
0/150
提交评论