ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:28.25KB ,
资源ID:6011123      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6011123.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(面向对象程序设计基础学习提纲.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

面向对象程序设计基础学习提纲.docx

1、面向对象程序设计基础学习提纲面向对象程序设计基础学习提纲第1章 程序设计与c+语言初步1、c+语言程序结构2、c+程序运行3、面向对象程序特征第2章 基本数据类型1、 标识符、关键字:标识符的命名规则:以字母或下划线开始,不能包含非法字符2、 常量和变量整型常量(十、八、十六进制的正确写法)实型常量(小数形式、指数形式)字符常量(普通字符和转义字符)字符串常量(结束标志、长度)变量(合法变量名、数据类型、作用域、存储类型)符号常量:#define PI 3.14 const double PI = 3.14;3、 C+输入输出流(无格式输入输出,输入字符串)4、 基本数据类型(整型、实型、字符

2、型、无值型(void)、布尔型)5、 运算符与表达式(重点)运算符的种类、优先级和结合性(编译器会对程序中所有表达式求值)算术运算符及表达式:* 、 / 、 + 、 、%(用于整数运算,可用来判断是否整除)、(自加、自减,只能作用于变量,放在变量前面或后面的区别)关系运算符及表达式:、=、=、= =、!=。运算结果为1(真)或0(假)逻辑运算符及表达式:(会使用&和|书写逻辑表达式,判断时非0即为真,0为假)赋值运算符及表达式:赋值运算符和,左边只能是变量。4、 类型转换:如(int);经过强制类型转换后算术表达式的求值例题:练习:2-1、2-3、2-8上机习题:2-2第3章 基本控制结构1、

3、 三种基本结构:顺序结构、选择结构、循环结构2、 顺序结构(表达式语句、空语句、复合语句)3、 if.else语句实现选择结构及其嵌套4、 switch语句实现多分支选择,break语句跳出分支结构5、 for、while、do.while循环结构(循环次数、循环条件、循环结束后变量的值)6、 break语句和continue语句7、 多重循环例题:3.2.3 3.2.4 3.2.5 3.2.8 3.3.4 3.3.6 练习:3-2,3-4, 3-6上机习题: 3-3第4章 函数1、 函数的有关概念:类型、参数、返回值2、 定义函数:确定函数的类型、形参的类型及名称、返回值及一致性、定义位置等

4、。3、 函数调用:确定实参及类型、调用方式与方法、参数传递方式(传值调用、传址调用)。4、 递归函数及调用:由递推公式定义递归函数5、 变量的作用域及存储类型:全局、局部变量的定义及其作用域,局部变量的三种存储类型:自动存储、静态存储、寄存器存储,静态局部变量的初始值及在函数经过多次调用后的值。6、递归程序设计7、预处理命令:宏定义8、库函数例题:4.2.2 4.7.2 练习题:4-6,4-8第5章 类与对象1、 类的定义;类成员的访问控制:公有public、保护protected和私有private。2、 成员函数的定义:在类外定义成员函数。3、 对象的概念:类和对象的关系;构造函数和析构函

5、数;习题:5-2,5-4第6章 复合数据类型1、 指针与指针变量的概念、定义、指针运算(不包括指针的关系运算)、初始化。2、 一维数组、二维数组的定义及初始化(下标从0开始,二维数组按行排列、根据行列数定义二维数组等)3、 指向变量的指针与指向数组的指针的使用(字符指针的各种初始化形式)4、 利用字符指针处理字符串(输入、输出、复制、逆序排列、求长度)5、字符串:string类的用法4、 常用字符串处理函数(strlen、strcpy、strcmp、strcat)6、 指针数组的使用(多个字符串按字典顺序排序)6、对象指针:用指针访问数据成员和成员函数7、指向函数的指针8、结构类型、枚举类型与

6、类型别名例题:6.3.1 6.3.2习题:6-3,6-6,6-9第7章 继承机制1、 继承和派生的概念2、 单一继承:三种继承方式的区别3、 派生类构造函数的定义方法4、 派生类析构函数的注意问题5、 多重继承的声明形式6、 多重继承的二义性及其解决方法第8章 多态性1、 多态的概念2、 函数重载3、 运算符重载:重载为成员函数;重载为友元函数4、 虚函数的声明及其用法5、 虚析构函数的作用6、 纯虚函数和抽象类的概念第10章 输入输出流1、 输入输出流类库2、 文件流的概念:文件的打开和关闭;文件的读写例题:10.5.1, 10.7.1复习题一及参考答案:一、单选题(每小题1分,共6分)1、

7、在每个C+程序中都必须包含有这样一个函数,该函数的函数名为。A.mainB.MAINC.nameD.function2、设x和y均为bool量,则x&y为真的条件是。A.它们均为真B.其中一个为真C.它们均为假D.其中一个为假3、下面的哪个保留字不能作为函数的返回类型?。A.voidB.intC.newD.long4、假定a为一个整型数组名,则元素a4的字节地址为。A.a+4B.a+8C.a+16D.a+325、假定AB为一个类,则执行“ABa(4),b3,*p2;”语句时,自动调用该类构造函数的次数为。A.3B.4C.6D.96、假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的

8、加法,并返回相加结果,则该成员函数的声明语句为:。A.ABoperator+(AB&a,AB&b)B.ABoperator+(AB&a)C.operator+(ABa)D.AB&operator+()二、填空题(每小题2分,共24分)1、C+语言中的每条基本语句以作为结束符,每条复合语句以作为结束符。2、执行“coutchar(A+2)5的相反表达式为。5、假定一个一维数组的定义为“char*a8;”,则该数组所含元素的个数为,所占存储空间的字节数为。6、变量分为全局和局部两种,变量没有赋初值时,其值是不确定的。7、假定a是一个二维数组,则aij的指针访问方式为。8、假定一个结构类型定义为“s

9、tructDinta;unionintb;doublec;D*d2;”,则该类型的大小为字节。9、对一个类中的数据成员的初始化可以通过构造函数中的实现,也可以通过构造函数中的实现。10、假定AB为一个类,则执行“ABa10;”语句时,系统自动调用该类的构造函数的次数为。11、假定类AB中有一个公用属性的静态数据成员bb,在类外不通过对象名访问该成员bb的写法为。三、给出下列程序运行后的输出结果(每小题6分,共36分)1、#includevoidSB(charch)switch(ch)caseA:casea:coutwell!;break;caseB:caseb:coutgood!;break;

10、caseC:casec:coutpass!;break;default:coutnad!;break;voidmain()chara1=b,a2=C,a3=f;SB(a1);SB(a2);SB(a3);SB(A);coutendl;2、#include#includevoidmain()char*a5=student,worker,cadre,soldier,peasant;char*p1,*p2;p1=p2=a0;for(inti=0;i0)p1=ai;if(strcmp(ai,p2)0)p2=ai;coutp1p2endl;3、#includeinta=5;voidmain()inta=1

11、0,b=20;coutabendl;inta=0,b=0;for(inti=1;i6;i+)a+=i;b+=a;coutab:aendl;coutabendl;4、#includeintLB(int*a,intn)ints=1;for(inti=0;in;i+)s*=*a+;returns;voidmain()inta=1,2,3,4,5,6,7,8;intb=LB(a,5)+LB(&a3,3);coutb=bendl;5、#include#includestructWorkercharname15;/姓名intage;/年龄floatpay;/工资;voidmain()Workerx;cha

12、r*t=liouting;intd=38;floatf=493;strcpy(x.name,t);x.age=d;x.pay=f;coutx.namex.agex.payendl;6、#includeclassAinta;public:A(intaa=0)a=aa;A()coutDestructorA!aendl;classB:publicAintb;public:B(intaa=0,intbb=0):A(aa)b=bb;B()coutDestructorB!bendl;voidmain()Bx(5),y(6,7);/后定义的变量将先被释放四、写出下列每个函数的功能(每小题6分,共24分)1、

13、#includeintSA(inta,intb)if(ab)return1;elseif(a=b)return0;elsereturn-1;2、floatFI(intn)/n为大于等于1的整数floatx,y=0;docinx;n-;y+=x*x;while(n0);returny;3、templatevoidWE(Typea,Typeb,intn)for(inti=0;if-name;StrNode*p=f;while(-n)p=p-next=newStrNode;cinp-name;p-next=NULL;五、编写程序,把从键盘上输入的一批整数(以-1作为终止输入的标志)保存到文本文件“a

14、:xxk1.dat”中。(10分)一、单选题(每小题1分,共6分)评分标准:选对者得1分,否则不得分。1、A2、A3、C4、C5、B6、B二、填空题(每小题2分,共24分)评分标准:每题与参考答案相同者得2分,否则不得分。1、:2、C3、484、x+yb则返回1,若a=b则返回0,若ab则返回-1。2、求出从键盘上输入的n个常数的平方和并返回。3、模板函数,把数组a的每个元素按逆序放入数组b中。4、建立一个具有n个结点的链表,每个结点的字符串值由键盘输入,链表的表头指针由引用变量f带回。五、编写程序,把从键盘上输入的一批整数(以-1作为终止输入的标志)保存到文本文件“a:xxk1.dat”中。

15、(10分)评分标准:见参考程序中的注释。#include/使用此命令得1分#include#includevoidmain()ofstreamfout(a:xxk1.dat);/定义输出文件流并打开文件得2分if(!fout)cerr文件没有打开!x;while(x!=-1)foutxx;/能够从键盘向文件正确输出数据得6分fout.close();/关闭输出文件流得1分复习题二及参考答案一、 填空题1.C+源程序文件的缺省扩展名为_。2.程序的三种基本控制结构是:顺序结构、 结构、_结构。3.在C+程序中,当函数调用在前、函数定义在后时,则应在主调函数中,在调用前增加对被调函数的_说明。4.

16、在调用具有数组参数的函数时,须以 作为实在参数。5函数递归调用指的是,在函数定义的函数体中又出现直接或间接地调用 。6.C+依据调用中实在参数在 上或 上的不同来确定调用的是重载函数的哪一个。7. 在函数外定义的变量称为 变量。8. 字符串常量是用 括起来的字符序列,在字符串的末尾有一个结束标志 。9. 当撤消一个含有基类和类对象成员的派生类对象时,将首先完成_的析构函数定义体的执行,接着完成_的析构函数定义体的执行,最后完成_的析构函数定义体的执行。10. 设px是指向一个类动态对象的指针变量,则执行”delete px;”语句时,将自动调用该类的_。(2分)11.假定p所指对象的值为25,

17、p+1所指对象的值为46,则*p+的值为_。(2分)12.假定a为一个整型数组名,则元素a4的字节地址为_。(2分)13.假定一个结构类型的定义为 “struct Dint a; union int b; double c;D* d2;”,则该类型的大小为_字节。(2分)14.假定要动态分配一个类型为Worker的具有n个元素的数组,并由r指向这个动态数组,则使用的语句为_。(2分)二、 写出下列表达式的值及运算过程1设x=2.5,y=4.7,a=7,b=2: 计算表达式x+a%3+(int)y/(int)x的值2设x=2.5,y=4.7,a=7,b=2:计算表达式!(ab)| xy的值3设a

18、=1,b=-2,c=1:计算表达式x=(d=b*b4*a*c, (d=0)?b/(2*a):b/(2*a)+ sqrt(d)/(2*a) 的值 4设有变量说明int a=4,b=2,x=3,y=0:计算表达式(-a+b)&(xy)的值5. int a=1,&b=a,*p=&a,y :计算表达式 y=(a+=b,b+=*p,*p+a) 的值6. 设:int a5=10,20,30,40,50; int *p=&a0; 计算表达式+*p+*(a+3)的值。三、读程序, 并将运行结果写在对应输出语句的后面1#includevoid main() int a6=0,1,2,3,4,5; int i=0

19、; for(i=0;i6;i+)if(i%2=0) ai=ai+1; else ai=ai+2; cout ai; 2#includevoid f(int &a,int &b) int t=a; a=b; b=t;void main()int x=10,y=15;f(x,y);coutxtyn;3#includevoid main() int i=10; switch (i) case 9:i+; case 10:+i; case 11:i+; default:i=i+1;coutiendl;4 #include #include struct Worker char name15; /姓名

20、int age; /年龄 float pay; /工资 ; void main() Worker x; char *t=WeiRong; int d=45; float f=1235; strcpy(x.name,t); x.age=d; x.pay=f; coutx.name x.age x.payendl; 四、编程题1设计一程序,它输入10个整数到一个数组中,调整这10个整数在数组中的排列位置,使得其中最大的一个数成为数组的首元素,最小的一个数成为数组的末元素。2用递归方法设计函数int arraymin(int d,int size);其中d为数组,size为数组元素个数;arraymin返回d中的最小元素。 3定义描述圆柱体的结构体类型Cylinder,该结构体类型的数据成员为圆柱体底半径r与高h。编写函数Volume()计算出圆柱体的体积。在主函数中定义圆柱结构体变量,输入圆柱

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1