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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

C++复习题汇总Word格式文档下载.docx

1、10在MFC编程中,视图/文档类程序是通过OnDraw()函数进行进行输出的。 1C+语言是在C语言基础上扩充了函数功能而得来的。2在C+语言中,使用struct(结构体)定义的类与使用class定义的类是一样的。3每个对象也有地址,该地址就是存储此对象数据成员的单元的首地址。4如果在一个类的对象之间要进行数据交换,可以使用该类的静态数据成员来完成。5在声明一个类时,必须同时声明类的数据成员和成员函数。6设函数fun( )是一个不属于任何类的普通函数,则在调用该函数时只能用fun()方式,而不能用:fun()方式来调用。7类的构造函数和析构函数一般都声明为虚函数。8设Time是一个类,现有指针

2、p的定义语句:const Time *p;则通过指针p不可以修改Time类对象的公有数据成员。9使用MFC编程时,OnDraw函数是CView类的成员函数。10在VC6.0开发环境中,对导入的所有位图资源都可以进行修改。1类的友员函数是指可以访问本类私有成员的其它类的成员函数。2在定义二维数组时,语句“int a3=1,3,5,2;”是正确的。3如果一个类的所有对象都共享某一个变量,则应当将该变量定义为该类的私有成员。4函数重载时,它们的参数个数和类型要求都不能相同。5在文档/视图结构的程序中,输出是在OnDraw()函数中完成的。6在C+中,标识符Max和MAX是不一样的。7析构函数的作用是

3、当对象不用时,删除对象。9在声明一个类时,可以不同时声明类的数据成员和成员函数。10在VC6.0开发环境中,可以同时开发几个工程。1C+函数必须有返回值,否则不能使用函数。2构造函数不具备的特征是构造函数需指定类型说明。4Visual C+集成开发环境中,一个Workspace可以创建多个Project。7cout属于标准输出流,而cerr和clog则不属于标准输出流。8ASCII码文件和二进制文件都可在记事本中直接打开。9在C+程序中,可以使用命名空间,也可不使用命名空间。10在文档/视图结构的程序中,输出是在OnDraw()函数中完成的。 1语句“ typedef struct _MYST

4、RUC int x; int y; double z; MYSTRUC; ”是非法语句。 ( ) 2对对象成员的构造函数的调用顺序,取决于这些对象成员在成员初始化列表中的顺序。( ) 3能访问一个类CMyClass中的private成员的可以是类CMyClass的成员函数,友元函数和友元类中的函数。4C+中,如果条件表达式值为-1,则表示逻辑为假。6在C+语言中,表达式:“b+;” 和“+b;”在任何地方的作用都是不一样的。7在定义二维数组时,语句:int a5;是错误的。8在C+中,标识符Max和MAX是不一样的。9析构函数的作用是当对象不用时,删除对象。10引入内联函数的主要目的是缩短程序

5、代码,让程序少占用内存空间。1 2 3 4 6 7 8 9 10二、简答题1、面向过程的程序设计和面向对象的程序设计的主要区别是什么?2、什么是对象?什么是简单继承?什么是多重继承?3、在VC+6.0中,语句CWnd:Invalidate();和语句CWnd:UpdateData(TRUE);的功能分别是什么?4、什么是面向对象的程序设计?5、什么是类?什么是封装?什么是多态性?6、在VC+6.0中,模态对话框和非模态对话框的主要区别是什么?7什么是面向对象的程序设计?8什么是多态性?C+中,多态性是如何实现的?9c+中,什么是函数重载?什么是运算符重载?什么是构造函数?什么是析构函数?10构

6、造函数和析构函数的作用是什么?什么时候需要自己定义构造函数和析构函数?11什么是面向对象的程序设计?它的几个特征是什么?12函数重载的主要作用是什么?调用不同的重载函数是在编译时决定还是在运行时决定?13简述类和对象的含义。面向对象程序设计和面向过程程序设计的主要区别是什么?14什么是友元函数?友元函数的作用是什么?15函数重载的主要作用是什么?函数重载时参数个数不同时,能否有缺省参数,为什么?16简要说明面向对象的程序设计的四个主要特征。17类和结构有什么异同?18多态性是指什么?C+中多态性是如何实现的?19什么是类?什么是对象?什么是面向对象的程序设计?20什么是简单继承?在软件开发过程

7、中,继承有什么好处?21在C+中,分别使用while 和dowhile语句等价实现下列for语句的功能:for (i=0,k=0;i5;k+=i+);22构造函数和析构函数的作用是什么?23什么是对象?面向对象程序设计的四个基本特征是什么?24什么是函数重载?它的主要作用是什么?1、答:主要区别:面向过程的程序设计:以功能为中心,采用函数来描述,函数和操作的数据是分离的。程序的实现通过函数的顺序执行来实现。面向对象的程序设计:它吸取了面向过程的程序设计的优点,同时又考虑了现实世界和计算机处理的关系,它的整个程序由一系列相互作用的对象构成,对象之间的交互通过发送消息来实现,对象通过响应消息来实现

8、程序的功能。2、答:对象:是包含现实世界物体特征的抽象实体,每个对象有内部的属性和操作方法。 简单继承:派生类的基类只有一个的继承方法。 多重继承:派生类的基类同时有多个时的继承方法。3、答:CWnd:的功能是:发送重绘视图的消息,即执行重绘视图的OnDraw()函数。说明对话框中控件的数据有效,这些数据放入对应控件的变量中。4、答:它的整个程序由一系列相互作用的对象构成,对象之间的交互通过发送消息来实现,对象通过响应消息来实现程序的功能。它有四个基本的特征,即抽象、封装、继承和多态性。5、答:类:是指具有相同的属性和操作方法,并遵守相同规则的对象的集合。 封装:是指将抽象得到的数据成员和代码

9、相结合,形成一个有机的整体,并且将它们的细节隐藏起来的一种方法。多态性:是指允许不同类的对象对同一消息作出响应,即实现“一个接口,多种方法”。6、答:模态对话框使用DoModal()来启动,它垄断了消息循环,它只有在关闭后,才能返回应用程序。非模态对话框使用Create()函数来产生,用DestroyWindow()函数来关闭。它与应用程序共用一个消息循环,它产生后,应用程序一样可以接收消息循环。7答:(评分标准:两个知识点各4分,后一个知识点每小点2分)(4分)简单继承:(2分)多重继承:8答:两个知识点各4分)多态性是指:向不同的对象发送同一个消息,不同的对象在接收时会产生不同的行为(即方

10、法)。C+中,多态性是通过指针和虚函数来实现的。9答: (评分标准:每小题2分,不完全正确,适当扣分,等价写法给满分)函数重载:函数的名称相同,参数的个数或类型不同的函数。运算符重载:对运算符赋予新的含义,使之一名多用(主要是指运算对象包含类对象)。构造函数:构造函数的名字必须与类名同名,它不具有任何类型,不返回任何值,主要用于对象初始化。析构函数:函数名与类名相同,只是在前边加“”符号,它不具有任何类型,不返回任何值,主要用于对象撤销后的清理工作。10(评分标准:前两个知识点各2分,后一个知识点4分)答:构造函数的作用:用于新建对象的初始化工作。析构函数的作用:用于在撤销对象前,完成一些清理

11、工作,比如:释放内存等。每当创建对象时,需要添加初始化代码时,则需要定义自己的构造函数;而对象撤销时,需要自己添加清理工作的代码时,则需要定义自己的析构函数。11. (评分标准:两个知识点各4分,后一个知识点每小点1分) 面向对象的程序设计:12. (评分标准:前两个知识点各4分) 答:函数重载主要作用是:用同一个函数名可以去调用不同参数或功能的函数,即用同一个函数实现不同的操作。调用不同的重载函数是在编译时决定的。13(评分标准:编程时可以不知道对象的内部实现细节。程序由一系列的函数构成,程序的实现通过函数的顺序执行来实现。编程时需要清楚程序实现的每一步细节。14(评分标准:在一个类中,用f

12、riend声明的非本类函数就是友元函数。友元函数的作用:可以直接访问本类的私有成员,提高编程的灵活性和程序执行效率。15. (评分标准:函数重载时参数个数不同时,不能有缺省参数。因为:有缺省参数时,就会发生二义性,编译出错。16(评分标准:主要特征:1)、抽象,即忽略当前主题中与目标无关的那些方面,把它的主要特征抽取出来。抽象包括数据抽象和代码抽象。2)、封装,它是将抽象得到的数据成员和代码相结合,形成一个有机的整体。并且,封装可以隐藏内部的细节。3)、继承,它提供了代码重用的一种方式,派生类可以重用基类的属性和行为。4)、多态性,它是指不同类的对象对同一消息作出不同反应,即c+的代码可以根据

13、运行情况的不同而执行不同的操作。17(评分标准:结构是类的一种特例,在结构体中也可以定义成员函数、构造函数和析构函数,成员也可使用private、protected、public。结构和类的区别是:在缺省情况下,结构中的所有成员都是公有的,而在类中是私有的18(评分标准:19答:是指具有相同的属性和操作方法,并遵守相同规则的对象的集合 。20答:(3分)继承的好处:由于可以利用已有的软件基础来进行新的软件开发,所以能提高软件开发效率和软件质量。21答:每小题4分,不完全正确,适当扣分,等价写法给满分)(1)用while语句: (2)用do.while语句: i=0; k=0; while(i5

14、) do k+=i+; /该语句可有多种表达 while(i5);22答:23答:24答:前两个知识点各3分,后一个知识点2分) 函数重载:C+允许用同一函数名定义多个函数,这些函数的参数个数和参数类型不同。主要作用是:三、填空题(8分) 1. 下面是一个求数组元素之和的程序。主程序中定义并初始化了一个数组,然后计算该数组各元素的和,并输出结果。函数sum计算数组元素之和。填充程序中不完整的部分。#include int sum(int ,int);void main() int ia5 = 2,3,6,8,10; A ; sumOfArray = sum(ia,5); cout Sum of

15、 array: sumOfArray endl;int sum(int array,int len) int iSum = 0; for(int i = 0; B ; C ) D ; return iSum;A int sumOfArray; B i len C i+ D iSum += arrayi;2. 假定有定义为“struct NODEint data;NODE * next;”,下面算法根据table数组中的n个元素建立一个表头指针为L的链表,链表中结点值的顺序与数组元素值的顺序相同。 void f5(NODE * & L,int table ,int n) if(nnext= (2

16、) ; p-data= (3) ; i+; next=NULL; /把最后一个结点的指针域置空 p=L; L=L-next; /使L指向链表的第一个带值的结点 Delete p;(1) in (2) new NODE (3)tablei三、填空题(每空2分,共10分)下面程序中的Create函数根据table数组中的前n个元素建立一个表头指针为Head的链表,链表中结点值的顺序与数组元素值的顺序相同。填充程序中不完整的部分,使程序完整正确。#includestruct NODEint data;NODE * next;void Create(NODE * & Head,int table ,i

17、nt n) int i; NODE *p;=0) _(1)_;/没有元素时,链表指向空。 Head=new NODE; /生成第一个结点 Head-data = _(2)_; i=1; p=Head; while( inext (4) i+(5) p-next=NULL1根据程序说明和程序中的注释,填充程序中不完整的部分。类Number的成员函数TwoTimes是递归函数,功能是求2n (假设nusing namespace std;class Numberprivate: int Num;public: int n; int TwoTimes (int n) /递归函数TwoTimes (n

18、)求2n 。 if (_(1)_) return 0; if (n=0) _(2)_; else return _(3)_; int GetNum() return Num; Number(int n=0) Num = n; Number *p; p =_(4)_;/动态生成由p指向的Number对象,并使Num为5。 coutTwoTimes(_(5)_);/输出2Num delete p; (1) nGetNum()MyString是自定义的一个字符串类,其成员函数 IsPalindrome判断该字符串对象是否是回文(即字符串顺读和倒读是一致的,比如字符串“12321”和“abba”都是回文,而“12345”则不是回文)。构造函数用于给字符串赋值。#define MaxLen 100class MyString private: int Len; /字符串的长度 char ValueMaxLen;/字符串的值 int IsPalindrome() /判断Value是否是回文,是则返回1,不是返回0。 int i=0; while(iMaxLen) Len =

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

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