c++期末考试复习讲义.doc_第1页
c++期末考试复习讲义.doc_第2页
c++期末考试复习讲义.doc_第3页
c++期末考试复习讲义.doc_第4页
c++期末考试复习讲义.doc_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

期末考试复习讲义题型:(1)单项选择(15题,每题2分)、(2)填空题(共10空,每空1分)、(3)读程序写结果题(5题,每题4分)、(4)程序填空题(3题左右,10个空,每空2分)(5)编程题(2题,每题10分,一题是面向过程部分的,数组、函数、流程控制,三种知识点可能结合起来考;另一题是定义类和对象的基本程序)教材中已经介绍的必须掌握的重点算法思想:(1)判断质数 (2)FIBONACCI数列 (3)求最大公约数 (4)图形打印问题 (5)求和问题 (6)交换两个变量的值另外在数组、文件章节还需要补充一些内容:(1)一维数组中求元素的和、求平均、求最大或最小值(2)二维数组中的元素求和,矩阵转置,求最值(3)C风格字符串中求串长的实现,求串拷贝的实现目录1、 基础知识2、 运算符与表达式3、 流程控制4、 数据类型5、 函数6、 面向对象7、 文件8、 其他9、 少量超范围1、基础知识必知知识点基础知识面向对象的三大特性;C+源文件、目标文件的扩展名;合法的用户自定义标识符,合法的字符常量表示,尤其是转义字符,每个字符的三种等效表示方法;合法的实型常量表示;整型常量在程序中的三种制式表示; bool型的两个常量值;两种注释方式;1)面向对象的三大特性(P2)封装性、继承性、多态性网上自测题:第一次测试18题2)C+源文件、目标文件的扩展名源文件扩展名:cpp目标文件扩展名:obj网上自测题:第一次测试13题3)合法的用户自定义标识符(P3)教材课后习题:第一章选择题2,3题4)合法的字符常量表示,尤其是转义字符,每个字符的三种等效表示方法(P16-17)合法的字符常量表示:单引号括起来的一个字符,如:s; 特殊的转义字符,例如:(P17) n等;一般的转义序列:ooo与xdd;每个字符的三种等效表示方法,以字符a为例:a、 141、 x61。网上自测题:第一次测试4,6,14题5)合法的实型常量表示(P15)浮点常量的两种表示形式网上自测题:第一次测试5题6)整型常量在程序中的三种制式表示(P14)十进制整数文字常量没有前缀八进制整数文字常量前缀:0十六进制整数文字常量前缀:0x网上自测题:第一次测试15,20题教材课后习题:第二章选择题4题7)bool型的两个常量值(P18)true和false教材课后习题:第二章填空题1题8)两种注释方式/ 与 /*/2、运算符与表达式必知知识点读程填程填空重点运算符与表达式重点运算符:赋值及复合赋值运算符、关系、逻辑、算术(%、/较特殊)、条件(唯一的三目运算符),掌握运算符的优先级及结合性并且会计算,区分前+后+前-后-;会正确用关系表达式表达出一定范围内的数据;区分表达式的最终结果(类型)与变量所获得值之间的区别;类型自动转换的规律三个运算符:sizeof求字节数;new申请动态空间,注意申请单个空间与申请数组空间的区别、对应delete运算符的使用;一、必知知识点1)运算符:赋值及复合赋值运算符(P21)=、*=、/=、%=、+=、-=网上自测题:第一次测试7题关系(P23)网上自测题:第一次测试17题逻辑(P24)网上自测题:第一次测试2,16题教材课后习题:第二章选择题5题教材课后习题:第二章填空题3题算术(%、/较特殊)(P19-20)网上自测题:第一次测试3,11题条件(唯一的三目运算符)(条件)?结果1:结果2 网上自测题:第一次测试1题教材课后习题:第二章填空题2题掌握运算符的优先级及结合性并且会计算(P68-69)网上自测题:第一次测试7,8,12题区分前+后+前-后-(P20)网上自测题:第一次测试2题教材课后习题:第二章选择题1题2) 会正确用关系表达式表达出一定范围内的数据网上自测题:第一次测试16题教材课后习题:第二章选择题5题3)区分表达式的最终结果(类型)与变量所获得值之间的区别4)类型自动转换的规律(P70)前半页网上自测题:第一次测试19题二、读程填程填空重点三个运算符:1)sizeof求字节数(P25)参考例2-13中sizeof的用法2)new申请动态空间,注意申请单个空间与申请数组空间的区别(P59)动态分配单个变量的语法形式为:new T(初值列表);例如: new int(5);动态分配一维数组的语法形式为:new T元素个数;例如: new int5; 3)对应delete运算符的使用(P59)释放单个变量空间的语法形式为:delete 指针名;例如:int *p= new int(5);delete p;释放动态数组空间的语法形式为:delete 指针名;例如:int *p= new int5;delete p;3、流程控制必知知识点读程填程填空重点教材中重点示例必须掌握编程重点流程控制换行的两种不同表示方式;三种基本结构是什么;循环体执行的次数,是否死循环;break与continue在循环结构中的不同作用;if 、switch如何控制分支结构,注意else与if的正确匹配条件嵌套if的分支理解;注意switch中break的正确使用及作用;switch及其嵌套时的执行,注意何时结束;循环及其嵌套时的执行效果;循环结构中用了break及continue时的执行效果;例3-11判断质数、求出一定范围内的质数;例3-5求和问题(以及:固定项求和、根据条件控制求和,实验一中的求和题目)、打印规则图形问题,例3-9九九乘法表(实验一中的对应题目)、例3-6 Fibonacci数列求解问题;格式控制,每行几个打印的控制;用辗转相除法求最大公约数,进而求最小公倍数;水仙花数的求解一、必知知识点1)换行的两种不同表示方式nendl2)三种基本结构是什么顺序结构、选择(分支)结构、循环结构网上自测题:第二次测试17题3)循环体执行的次数,是否死循环网上自测题:第二次测试2,5,7,10,11,16,18,20题教材课后习题:第三章选择题1,3,4题教材课后习题:第三章填空题2,5题4)break与continue在循环结构中的不同作用(P41)网上自测题:第二次测试20题教材课后习题:第三章填空题1题教材课后习题:第三章填空题4题5)if 、switch如何控制分支结构,注意else与if的正确匹配条件嵌套if的分支理解(P30-34)网上自测题:第二次测试1,3,6,8,13,15,19题教材课后习题:第三章选择题2题6)注意switch中break的正确使用及作用网上自测题:第二次测试1,4题二、读程填程填空重点1)switch及其嵌套时的执行,注意何时结束2)循环及其嵌套时的执行效果(P40)网上自测题:第二次测试9,20题3)循环结构中用了break及continue时的执行效果(P42)网上自测题:第二次测试20题三、教材中重点示例必须掌握1)例3-11判断质数、求出一定范围内的质数2)例3-5求和问题(以及:固定项求和、根据条件控制求和,实验一中的求和题目)其中:实验一求和题目,参考文件“实验一”第三题代码3)例3-8打印规则图形问题4)例3-9九九乘法表(实验一中的对应题目)其中:实验一对应题目,参考文件“实验一”第四题代码5)例3-6 Fibonacci数列求解问题编程题8:用数组实现Fibonacci数列6)格式控制,每行几个打印的控制;编程题6:输出所有的3位数字的质数7)用辗转相除法求最大公约数,进而求最小公倍数编程题15:用函数求最大公约数和最小公倍数四、编程重点水仙花数的求解打印出所有三位数的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如,153是一水仙花数,因为153=13+53+33。算法思想:循环+分支#include using namespace std;int main()cout三位数的水仙花数:endl;for(int i=100;i=999;i+)int a,b,c;/分别存放三位数的百位,十位,个位a=i/100;/百位b=(i-a*100)/10;/十位c=i-a*100-b*10;/个位,或者c=i%10;if (i=(a*a*a+b*b*b+c*c*c)coutiendl;return 0;4、数据类型必知知识点读程填程填空重点教材中重点示例必须掌握编程重点数据类型一维、二维数组的定义及初始化,元素的表示及访问方式,用指针访问一维数组元素的方式,C风格单个字符串的表示,用一维字符数组和一级字符指针进行初始化的方法,串长度求解;指针及引用的定义方式,初始化方式,获得值的方式;通过指针用new与delete运算符管理动态空间;如何利用指针访问一维数组元素,如何利用指针申请动态一维数组例4-4多维数组的初始化;例4-9,通过指针访问数组元素;例4-10;动态一维数组的管理;C风格字符串中几个常用函数的使用:strlenstrcpystrcmp;求长度复制判断相等串的基本操作如逆置等(这些内容主要是补充的,教材中未有合适示例);二维数组中矩阵的转置(只用一个二维数组或用两个二维数组);矩阵主副对角线元素求和一维数组求和、求平均、求最值、排序、输入、输出、逆序、特定位置元素交换等问题,会用函数实现各功能并能正确调用;会根据主函数代码反过来给出函数的定义;一、必知知识点1)一维、二维数组的定义及初始化,元素的表示及访问方式一维数组的定义及初始化,元素的表示以及访问方式(P48)参考ppt课件:04_复杂数据及运算数组15页:一维数组的定义16页:元素的表示19页:一维数组的初始化25页:一维数组初始化小结网上自测题:第三次测试2,3,5,9,12题教材课后习题:第四章选择题6题二维数组的定义及初始化,元素的表示以及访问方式(P50)参考ppt课件:04_复杂数据及运算数组35页:二维数组的定义36,37页:元素的表示47-49页:二维数组的初始化网上自测题:第三次测试8,22题教材课后习题:第四章选择题1题2)用指针访问一维数组元素的方式(P57-58)参考ppt课件:04_复杂数据及运算指针51,53-56页网上自测题:第三次测试4,7,16,17,24题教材课后习题:第四章选择题5题3)C风格单个字符串的表示,用一维字符数组和一级字符指针进行初始化的方法,串长度求解(P61-63)网上自测题:第三次测试10,11,18,20,21题4)指针及引用的定义方式,初始化方式,获得值的方式指针的定义方式,初始化方式,获得值的方式(P56)网上自测题:第三次测试1,6,13,19,23,25题教材课后习题:第四章填空题1,3题引用的定义方式,初始化方式,获得值的方式(P78)n 参考ppt课件:05_抽象与分类_函数45页教材课后习题:第四章选择题4题教材课后习题:第四章填空题2,5题5)通过指针用new与delete运算符管理动态空间(P59)动态分配单个变量的语法形式为:new T(初值列表);例如: new int(5);动态分配一维数组的语法形式为:new T元素个数;例如: new int5; 释放单个变量空间的语法形式为:delete 指针名;例如:int *p= new int(5);delete p;释放动态数组空间的语法形式为:delete 指针名;例如:int *p= new int5;delete p;二、读程填程填空重点如何利用指针访问一维数组元素,如何利用指针申请动态一维数组(P59)三、教材中重点示例必须掌握1)例4-4多维数组的初始化2)例4-9通过指针访问数组元素3)例4-10动态一维数组的管理4)C风格字符串中几个常用函数的使用:strlenstrcpystrcmp;求长度复制判断相等参考ppt课件:04_复杂数据及运算字符串24页5)串的基本操作如逆置等(这些内容主要是补充的,教材中未有合适示例)编程题11:字符串逆置6)二维数组中矩阵的转置(只用一个二维数组或用两个二维数组)用二个二维数组实现:#includeusing namespace std;int main()int a33,b33;int i,j;for(i=0;i3;i+)for(j=0;jaij;cout原矩阵:endl;for(i=0;i3;i+)for(j=0;j3;j+)coutaij ;coutendl;cout转置后的矩阵:endl;for(i=0;i3;i+)for(j=0;j3;j+)bij=aji;coutbij ;coutendl;return 0;用一个二维数组实现:#includeusing namespace std;int main()int a33;int i,j,t;for(i=0;i3;i+)for(j=0;jaij;cout原矩阵:endl;for(i=0;i3;i+)for(j=0;j3;j+)coutaij ;coutendl;cout转置后的矩阵:endl;for(i=0;i3;i+)for(j=i+1;j3;j+) t=aij; aij=aji; aji=t;for(i=0;i3;i+)for(j=0;j3;j+)coutaij ;coutendl;return 0;7)矩阵主副对角线元素求和#includeusing namespace std;int main()int a33;int i,j,s1=0,s2=0;for(i=0;i3;i+)for(j=0;jaij;cout原矩阵:endl;for(i=0;i3;i+)for(j=0;j3;j+)coutaij ;coutendl;for(i=0;i3;i+)s1+=aii;s2+=ai2-i;cout主对角线之和:s1endl;cout副对角线之和:s2公有成员的方式访问;定义派生类对象时构造函数的执行顺序;例5-18类的基本定义及使用;构造函数的调用;例5-19虽拷贝构造函数的定义;例5-20,构造与析构函数的定义及调用;例5-21对象数组的定义与使用;例5-23理解this指针;例5-24结构体的定义及与类的区别;例5-28友元函数;例5-29友元类;例8-3,类中字符串成员既要会string类对象;例8-4继承下的访问控制;例8-6派生类的定义及派生类构造函数中初始化列表调用基类构造函数,定义类的对象并通过对象调用相应的public 成员函数;例8-8向上转型(赋值兼容)问题;例8-9同名问题解决;动态多态性的实现;例9-3静态数据成员的定义初始化及使用;例9-4静态成员函数;例9-6、9-7、9-8 这三个关于常对象常成员的例子;例10-1虚函数等实现动态多态性;例10-4纯虚函数与抽象类根据要求设计一个类(Point,Date,Student等常规类),注意其中成员变量及成员函数的定义,正确定义对象或对象数组,按要求调用相关孙函数实现功能;会根据主函数中定义的内容反过来补充类的完整定义,包括数据成员和成员函数定义;一、必知知识点1)类和对象的关系(P94)第一段参考ppt课件:05_抽象与分类_类与对象28页网上自测题:第四次测试7题2)类的定义(P92-93)网上自测题:第四次测试12,14,18题3)对象的定义及使用方式(P94)参考ppt课件:05_抽象与分类_类与对象29,31页4)构造函数包括拷贝构造函数的特性及定义方法,二者参数表中的区别(P95-97)参考ppt课件:05_抽象与分类_类与对象42-43页:构造函数小结46页:拷贝构造函数的定义网上自测题:第四次测试20,23题教材课后习题:第五章选择题10题教材课后习题:第五章填空题2,3题5)在定义新对象时一定调用构造函数或拷贝构造函数,注意定义类的指针或引用的时候是不调用构造函数的教材课后习题:第五章选择题9,11题6)析构函数的特性(P99)参考ppt课件:05_抽象与分类_类与对象63-64页网上自测题:第四次测试1,24题教材课后习题:第五章填空题4,6题7)友元(友元函数与友元类)的声明、定义与使用(P111-112)参考ppt课件:05_抽象与分类_类与对象110,112页:友元函数118-120页:友元类网上自测题:第四次测试2,6题8)不同继承方式下成员的访问控制(P179-181)参考ppt课件:08_类的重用27-54页网上自测题:第六次测试4,7,8,13,15,17题教材课后习题:第八章选择题1,2,3,4,5,8,10,题教材课后习题:第八章填空题1,2题9)继承时派生类构造函数初始化列表中的内容(P182)参考ppt课件:08_类的重用64-67页网上自测题:第六次测试6,9,14,18题教材课后习题:第八章填空题3题10)静态数据成员的定义初始化等相关特性及用法(P199)参考ppt课件:09_数据的共享与保护31-34页网上自测题:第七次测试3题教材课后习题:第五章选择题8题教材课后习题:第九章选择题2,6,7,9,10,11题教材课后习题:第九章填空题4,6题11)如何利用虚函数及继承机制实现动态多态性(P214) 参考ppt课件:10_多态性13-19页网上自测题:第八次测试1,4,5,7,9题教材课后习题:第十章选择题2,7,10,11题教材课后习题:第十章填空题4,5,8题12)纯虚函数与抽象类的概念(P221-222)参考ppt课件:10_多态性32-33页网上自测题:第八次测试2,6,8,10题教材课后习题:第十章选择题3,4,12题教材课后习题:第十章填空题1,2,3,10题13)this指针的特殊性及意义(P105)参考ppt课件:05_抽象与分类_类与对象92页教材课后习题:第五章选择题7题14)赋值兼容(向上转型)的条件(P185)参考ppt课件:05_抽象与分类_类与对象82页网上自测题:第六次测试1,11,19题教材课后习题:第十章选择题1,5,6题二、读程填程填空重点1)如何定义一个类(结构体)(P92-93)2)如何定义类的对象并调用相应的成员函数完成功能(P94)3)构造函数的特点、何时自动调用及效果(P95)4)析构函数的特点、何时自动调用及效果(P99)5)派生类的定义,特别是在初始化列表中对基类构造函数的调用(P177,182)6)在继承机制下的虚函数、基类的指针或引用实现的动态多态性问题(P214)7)静态数据成员的初始化及使用(P199)8)成员访问方式:在类内的成员函数中直接访问数据成员;类外要定义对象,通过对象名.公有成员或对象指针名-公有成员的方式访问教材课后习题:第八章选择题6题9)定义派生类对象时构造函数的执行顺序(P182)教材课后习题:第八章选择题12题三、教材中重点示例必须掌握1)例5-18类的基本定义及使用;构造函数的调用2)例5-19拷贝构造函数的定义3)例5-20构造与析构函数的定义及调用4)例5-21对象数组的定义与使用5)例5-23理解this指针6)例5-24结构体的定义及与类的区别7)例5-28友元函数8)例5-29友元类9)例8-3派生类的定义与使用10)例8-4继承下的访问控制11)例8-6派生类的定义及派生类构造函数中初始化列表调用基类构造函数,定义类的对象并通过对象调用相应的public 成员函数12)例8-8向上转型(赋值兼容)问题13)例8-9同名问题解决;14)例9-3静态数据成员的定义初始化及使用15)例9-4静态成员函数16)例9-6、9-7、9-8 这三个关于常对象常成员的例子17)例10-1虚函数等实现动态多态性18)例10-4纯虚函数与抽象类四、编程重点1)根据要求设计一个类(Point,Date,Student等常规类),注意其中成员变量及成员函数的定义,正确定义对象或对象数组,按要求调用相关孙函数实现功能参考编程题18 :Car类的定义与使用编程题19 :对象数组初始化2)会根据主函数中定义的内容反过来补充类的完整定义,包括数据成员和成员函数定义7、文件必知知识点读程填程填空重点教材中重点示例必须掌握文件cin和cout的实质;文件的分类;文件流的定义、文件常用的几种打开方式、文件操作过程;文件操作所需要包含的头文件文本文件的复制,按条件复制修改等;用get、put函数操作文件中的单个字符例11-12文件的打开关闭,用get、put操作文件一、必知知识点1)cin和cout的实质(P231)cin:标准输入流对象,对应标准输入设备cout:标准输出流对象,对应标准输出设备教材课后习题:第十一章选择题1,3题2)文件的分类(P250)文本文件和二进制文件3)文件流的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论