VC++考试题A及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
VC++程序设计试题(A)
一、单项选择(每题1.5分,10小题,共15分)
1.关于类,下列说法不正确的是(D )
A.在类中,成员的默认访问特性是私有的
B.类实现了数据的封装
C.类实质上是一种数据类型
D.在类的定义中,必须包含private、public、protect对应部分
2、关于对象,下列说法中不正确的是(C )
A.对象是类的一个实例
B.任何一个对象只能属于一个类
C.一个类只能有一个对象
D.类与对象的关系和数据类型与变量间的关系类似
3、关于类的成员,下列正确的说法是(C )
A.数据成员必须定义为私有的
B.成员函数必须定义为公有的
C.数据成员和成员函数都可以为private public protect属性之一
D.公有成员函数只能访问类的公有成员,私有成员函数只能访问
类的私有成员
4、用于类中虚成员函数说明的关键字是( A)
A. virtual
B. public
C. protected
D. private
5、关于友元下列说法错误的是( B)
A.类的友元函数可以访问类的所有成员
B.类的友元函数只能访问类的私有成员
C.类A是类B的友元类,则A的所有成员函数可访问B的任何成员
D.类的友元函数不属于类
6、MFC主要由(D)组成
A. 基础类库、全局函数
B. 基础类库、全局变量、宏
C.基础类库、宏
D.基础类库、全局变量、全局函数、宏
7、应用程序类CWinApp完成以下(A)工作。
A.程序的初始化、运行和结束工作
B.消息的发送和执行
C.程序的框架、窗口
D.事件的发生与处理
8、程序对资源的调用主要是靠(C )来识别。
A.资源名称
B.资源类型
C.资源的ID号
D.以上都可以
9、菜单项助记符(快捷键)前要用(B)来引导。
A. %
B. &
C. #
D. $
10、下列不属于面向对象程序设计的3大机制的是(C )
A.多态
B.封装
C.重载
D.继承
二、判断题(每题1分,共10分)
1.类实现了数据的封装。(对)
2.当使用指针变量访问类的成员须使指针变量指向该类的某个对象(对)
3.友元函数是类的成员函数。(错)
4.运算符重载是一种特殊的函数重载。(对)
5.析构函数没有返回值类型。(对)
6.调用对话框类的成员函数DoModal()显示模态对话框。(对)
7.类的消息映射不可以被继承。(错)
8.模态对话框允许用户切换到本应用程序的其他窗口。(错)
9.当用户在键盘上按下一个键时,只有一个窗口能接收到该消息。(对)
10.接收鼠标消息的窗口不一定是活动窗口。(错)
三、填空题(每空1分,共15分)
1.面向对象程序设计的3大机制__封装_____、__继承_____、__多态_。
2.友元可以是___函数___,也可以是___类____。
3. ___构造函数____是在对象被创建时自动执行,对象消失时自动指向的成员函数称为__析构函数_____。
4.B类中包含一个A类的成员a,则生成B类的对象时构造函数的调用顺序为(先A后B),删除B类的对象时析构函数的调用顺序为(先B 后A)。
5. (消息)是事件发生时所产生的信息。
6.Windows下的对话框分为(模态)对话框和(非模态)对话框。
7.按钮控件分为(普通)、(单选)和(复选)三种。
四、读程题(4小题,共30分)
1.下面程序运行的结果为_____ A的构造函数
A的构造函数
__(7分)
#include “iostream.h”
class A
{ public:
A()
{ cout<<”A的构造函数”< void main() { A b[2],*p[3]; } 2.下面程序运行的结果为_____ A1的构造函数A2的构造函数 C的构造函数 __(7分) #include “iostream.h” class A1 { public: A1(int i) { cout<<”A1的构造函数!”< class A2 { public: A2(int i) { cout<<”A2的构造函数!”< class C: public A1,public A2 { public: C(int i,int j):A2(j),A1(i) { cout<<”C的构造函数!”< void main() { C c(1,2); } 3.下面程序运行的结果为_______(8分) #include "iostream.h" template T findmax(T x[],int n) { int i; T m=x[0]; for(i=1;i<=n-1;i++)