西大成人教育计算机语言(VC)期末考试复习题及参考答案.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《西大成人教育计算机语言(VC)期末考试复习题及参考答案.pdf》由会员分享,可在线阅读,更多相关《西大成人教育计算机语言(VC)期末考试复习题及参考答案.pdf(52页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、计算机语言(VC)一.单 选 题(共 26题,57.2分)1 下面叙述不正确的是()。A 派生类一般都用公有派生B对基类成员的访问必须是无二义性的C赋值兼容规则也适用于多重继承的组合D基类的公有成员在派生类中仍然是公有的正确答案:D2 下面循环语句中内层循环的循环体S 的执行总次数为()。for(int i=0;in;i+)for(int j=i;jn;j+)SA、n2B、(n+l)/2C、n(n+l)/2D、n(n-l)/2正确答案:C3 当消息产生时,系统调用CwinApp的()函数对消息进行解析,并发送到相应的窗口进行处理。ARunBCreateCTranslateMessageDDis
2、patchMessage正确答案:A4 所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也 就 是()。A 类B对象C函数体D数据块正确答案:A5 关于纯虚函数和抽象类的描述中,错误的是()。A 纯虚函数是一种特殊的虚函数,它没有具体实现B抽象类是指具有纯虚函数的类c 一个基类中说明有纯虚函数,该基类的派生类一定不是抽象类D抽象类只能作为基类使用,其纯虚函数的实现由派生类给出正确答案:A6通常拷贝初始化构造函数的参数是()。A 某个对象名B某个对象成员名C某个对象的引用名D某个对象的指针名正确答案:C7对于类中定义的成员,其隐含访问权限为()。Aprotected
3、BprivateCpublicDstatic正确答案:B8 以下说法正确的是()。A 用户调用标准库函数前,必须重新定义B用户可以重新定义标准库函数,若如此,该函数将失去原有含义C系统不允许用户重新定义标准库函数D用户调用标准库函数前,不必使用预编译命令将该函数所在文件包括到用户源文件中正确答案:B9 假设A 为一个类,则执行“Aa,b(3),*p;”语句时共调用该类构造函数的次数为()。A2 B3 C4 D5正确答案:A10在重载一个运算符时,其参数表中没有任何参数,这表明该运算符是()。A 作为友元函数重载的一元运算符B作为成员函数重载的一元运算符C作为友元函数重载的二元运算符D作为成员函
4、数重载的二元运算符正确答案:B11MFC主 要 由()组成。A 基础类库、全局函数B基础类库、全局变量、宏C基础类库、全局函数、宏D基础类库、全局函数、全局变量和宏正确答案:D12已知类A 是类B的友元,类 B是类C的友元,则()。A 类 A 一定是类C的友元B类 C一定是类A 的友元C类 C的成员函数可以访问类B 的任何成员D类 A 的成员函数可以访问类B的任何成员正确答案:D13程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用()符号作为分隔符。A 空格或逗号B逗号或回车C逗号或分号D空格或回车正确答案:D14MFC类库中的类按层次关系可知,Cstatic的直接父类为()。ACW
5、ndBCObjectCCcmdTargetDCFrameWnd正确答案:A15下列二维数组定义,正确的是()。Aint a5;Bint a口Cinta3=l,3,5,2Dinta(10)正确答案:C16类 A 的缺省构造函数和析构函数是()。AA()和 人()BA(int)和 人()CA()D A(delete)DA()和 int-A()正确答案:A17文件包含命令中被包含的文件的扩展名为()。A 必须是.hB不能是.hC可以是.h或.cppD 必须是.cpp正确答案:C18根据对话框的行为性质,对话框可以分为两类:()。A 对话框资源和对话框类B模式对话框和非模式对话框C对话框资源和对话框模
6、板D消息对话框和模式对话框正确答案:B19在 Windows API开发的应用程序框架中,下列哪种方法不能加载菜单()。A 在窗口类的定义时,把结构体WNDCLASS的 IpszMe nuName设置为合适的菜单名B在创建窗口时,首先调用LoadMe nu获得菜单句柄,然后调用函数CreateWindow加载该菜单C在应用程序中调用调用LoadMe nu获得菜单句柄后,调用函数SetMenu动态加载菜单D在窗口处理函数中,针对菜单消息设置合适的消息响应正确答案:D20下面关于静态数据成员的描述中,错误的是()。A 静态数据成员不是所有该类对象所共用的B静态数据成员要在类外初始化C说明静态数据成
7、员时要加修饰符staticD 引用静态数据成员时,要加类名及作用域符正确答案:D21在类中说明的成员可以使用关键字的是()。ApublicBexternCcpu register正确答案:A22在 VC6开发环境中,双击工作区文件,就能打开工作区及其包含的工程,其 后 缀 是()。A.dswB.dspC.rcD.clw正确答案:A23决定C+语言中函数的返回值类型的是()。Areturn语句中的表达式类型B调用该函数时系统随机产生的类型C调用该函数时的主调用函数类型D在定义该函数时所指定的数据类型正确答案:D24下列关于Windows应用程序对鼠标响应的说法,正确的是()。A 只有活动窗口才能
8、接受鼠标事件B可以调用函数SetCapture。函数实现对鼠标的捕获,且捕获鼠标后系统的键盘功能暂时失效。C用户只能调用系统定义的鼠标的光标形状,不能自定义光标D可以通过相应单一类型的鼠标消息来响应鼠标的拖动事件正确答案:B25有关构造函数的说法不正确的是()。A 构造函数名和类名一样B构造函数无任何函数类型C构造函数有且只有一个D构造函数在说明类对象时自动执行正确答案:C26一个类的友元函数或友元类能够通过成员操作符访问该类的()。A 私有成员B公有成员C保护成员D所有成员正确答案:D二.填 空 题(共 10题,22.0分)lclass test正确答案:第一空:25;2每 个 对 象 都
9、是 所 属 类 的 一 个。正确答案:第一空:实例;3 如果要把A 类成员函数void f()声明为类B 的友元函数,则应在类B 的定义中加入语句正确答案:第一空:friend void A:f();4 一个抽象类的派生类可以实例化的必要条件是实现了所有 的定义。正确答案:第一空:纯虚函数;5 两个函数的函数名相同,但参数的个数和类型不同,则称为正确答案:第一空:函数重载第二空:重载函数;6 类是用户定义的类型,具 有 类 类 型 的 变 量 称 为。正确答案:第一空:对象;7 在已经定义了整型指针p 后,为了得到一个包括10个整数的数组,并让p 指向该数组,应使用语句 O正确答案:第一空:i
10、nt*p=newint10;8this指 针 始 终 指 向 调 用 成 员 函 数 的。正确答案:第一空:对象;9 假设为类A 定义了构造函数“A(intaa,char*bb=NULL):a(aa),b(bb)”,则该类中至少包含有个数据成员。正确答案:第一空:2;10定义类动态对象数组时,元素只能靠自动调用该类的 来进行初始化。正确答案:第一空:无参构造函数;三.程序分析题(共3 题,6.6分)1运行结果:调用构造函数1。调用构造函数2。5 调用析构函数。调用析构函数。正确答案:运行结果:class B:Iclass A:hello2 分析如下程序写出运行结果。#include class
11、 Countprivate:static int count;public:Count()count+;Count()count-;static in HM()return count;);int Count:count=100;void main()(Count cl,c2,c3,c4;coutCount:HM();正确答案:运行结果:1043 分析如下程序写出运行结果。#include class lest int x,y;public:Test(int ijnt j=0)x=i;y=j;int get(int i,int j)return i+j;);void main()Testtl(
12、2),t2(4,6);int(Test:*p)(intJnt=10);p=Test:get;cout(tl.*p)(5)endl;Test*pl=&t2;cout(pl-*p)(7,20)endl;)正确答案:运行结果:15 27四.程序填空(共5 题,11.0分)lclass Aint a,b;public:A(int aa=0,int bb=O)(1)分别用aa和 bb对应初始化a 和 b();main()(2)定义类A 的对象X 并用5 初始化,同时定义y,并用x 初始化A*p=&x;正确答案:答案:(1):a(aa),b(bb)(2)Ax(5)zy(x)2 打印100以内的所有素数(所
13、谓素数是指只能被1和本身整除的正整数。)#include#include void main()int i,n;for(n=2;ntemp)coutn*)cout n;正确答案:答案:(1)i=temp n%i=03 输 入 10个整数,用冒泡排序法按从小打大的顺序排序,并输出排序结果。程序如下:include void main()int ijemp/pt;int*Pn=(1)int10;for(i=l;i=10;i+)coutPlease enter a number:endl;cin*(Pn+i);)for(i=l;i*(Pn+j+l)temp=*(Pn+j);*(Pn+j)=*(Pn+
14、j+l);*(Pn+j+l)=(4)for(i=l;i10;i+)cout*(Pn+i)正确答案:答案:(1)new(2)j2)编写程序计算Fibonacci数列第n 项值。程序如下:#include(1);void main(void)int number;coutPlease enter a integer number:endl;cinnumber;long result=(2);coutResult=resultendl;long Fib(int n)if(3)return 0;else if(n=2)return 1;elsereturn(4);;)正确答案:答案:long Fib(
15、int)(2)Fib(number)(3)n=l(4)Fib(n-l)+Fib(n-2)五.编程题(共1题,3.2分)12求 n(n=3)个学生的最高分和最低分及姓名,下面己经给出student类声明和main函数,请写出下面的student类的实现部分的三个函数:student(char na,int d),*getname(),compare(student&sl,student&s2)#include#include class student(char name,10,;int deg;public:student(char na,/=/int d=0);char*getname();
16、friend int compare(student&sl,student&s2);int getdeg(););void main()(student st=student(王强”,74),student(李刚”,68),student(张雪:84);int i=0,min=0,max=0;for(i=l;i3;i+)(if(compare(st,maxst/i/)=-l)max=i;if(compare(st/min/st/i,)=l)min=i;)cout“最高分:“st,max,.getdeg()g:st,max,.getname()endl;cout 最低分:(*(st+min).g
17、etdeg()“姓 名:st,max,.getname()endl;)正确答案:程序如下:#include#include class student char name,10,;int deg;public:student(char na/=,Jnt d=0);char*getname();friend int compare(student&slzstudent&s2);int getdeg();;void main()student st=student(“王强”,74),student(李刚”,68),student(张雪”,84);int i=0,min=0,max=0;for(i=
18、l;i3;i+)if(compare(st,maxst/i/)=-l)max=i;if(compare(st,min/st/i/)=l)min=i;)couti:st,max/.getdeg():st,max,.getname()endl;cout“最低分:(*(st+min).getdeg()“姓名:st,max,.getname()endl;一.单 选 题(共 22题,48.4分)1对于下面循环语句:int i=0;doi+;while(i*i10);,其循环体被执行的次数为()。A、4B、3C、5D、2正确答案:A2通常拷贝初始化构造函数的参数是()。A 某个对象名B某个对象成员名C某个
19、对象的引用名D某个对象的指针名正确答案:C3 下列不属于成员函数的是()。A 静态成员函数B析构函数C友元函数D构造函数正确答案:C我的答案:D4 下列说法正确的是()。A 类定义中只能说明函数成员的函数头,不能定义函数体B类中的函数成员可以在类体中定义,也可以在类体之外定义C类中的函数成员在类体之外定义时必须要与类声明在同一文件中D在类体之外定义的函数成员不能操作该类的私有数据成员正确答案:B5 下面说法正确的是(A 构造函数可以重载,B构造函数不能重载,C构造函数可以重载,析构函数不能重载析构函数可以重载析构函数也可以重载D构造函数和析构函数都不能重载正确答案:A6 在 VC6开发环境中,
20、双击工作区文件,就能打开工作区及其包含的工程,其后缀是()。A.dswB.dspC.rcD.clw正确答案:A7 下面叙述不正确的是()。A 派生类一般都用公有派生B对基类成员的访问必须是无二义性的C赋值兼容规则也适用于多重继承的组合D基类的公有成员在派生类中仍然是公有的正确答案:D8 有关构造函数的说法不正确的是()。A 构造函数名和类名一样B构造函数无任何函数类型C构造函数有且只有一个D构造函数在说明类对象时自动执行正确答案:C9 对基类和派生类的关系描述中,错误的是()。A 派生类是基类的具体化B基类继承了派生类的属性C派生类是基类定义的延续D派生类是基类的特殊化正确答案:B10文件包含
21、命令中被包含的文件的扩展名为()。A 必须是.hB不能是.hC可以是.h或.cppD必须是.cpp正确答案:C11当消息产生时,系统调用CwinApp的()函数对消息进行解析,并发送到相应的窗口进行处理。ARunBC reateCTranslateMessageDDispatchMessage正确答案:A12一个类的友元函数或友元类能够通过成员操作符访问该类的()。A 私有成员B公有成员C保护成员D所有成员正确答案:D13MFC类库中的类按层次关系可知,Cstatic的直接父类为()。ACWndBCObjectCCcmdTargetDCFrameWnd正确答案:A14下面循环语句中内层循环的循
22、环体S的执行总次数为()。for(int i=0;in;i+)for(int j=i;jfll A(delete)DA()和 int-A()正确答案:A17编写C+程序一般需经过的几个步骤依次是()。A 编辑、调试、编译、连接B编辑、编译、连接、运行C编译、调试、编辑、连接D编译、编辑、连接、运行正确答案:B18应用程序对象CprogramApp是程序执行的最重要部分,()均由其完成。A 程序的初始化、运行和结束工作B消息的发送和执行C程序的框架、窗口D事件的发生和处理正确答案:A19假设A 为一个类,则执行“Aa,b(3),*p;”语句时共调用该类构造函数的次数为()。A2 B3 C4 D5
23、正确答案:A20每个C+程序都必须包含这样一个函数,该函数的函数名为()。AmainBMAINCname function正确答案:A2 1 所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体 也 就 是()。A 类B对象C函数体D数据块正确答案:A22根据对话框的行为性质,对话框可以分为两类:()。A 对话框资源和对话框类B模式对话框和非模式对话框C对话框资源和对话框模板D消息对话框和模式对话框正确答案:B二.填 空 题(共 16题,35.2分)1C+中函数的参数传递一种是按值传递,另一种是 传递。正确答案:第一空:地址第二空:引用;2 为解决多继承中因公共基类而
24、产生的二义性问题,C+提供了 机制。将公共基类声明为它以后,它在派生类中只产生一个实例。正确答案:第一空:虚基类;3 两个函数的函数名相同,但参数的个数和类型不同,则称为。正确答案:第一空:函数重载第二空:重载函数;4this指针始终指向调用成员函数的。正确答案:第一空:对象;5 每个对象都是所属类的一个 o正确答案:第一空:实例;6 定义类动态对象数组时,元素只能靠自动调用该类的 来进行初始化。正确答案:第一空:无参构造函数;7 编译时的多态通过 实现。正确答案:第一空:函数重载;8C+程 序 的 源 文 件 扩 展 名 为。正确答案:第一空:cpp;9 假如一个类的名称为M yClass,
25、使用这个类的一个对象初始化该类的另一个对象时,可以调用 构造函数来完成此功能。正确答案:第一空:复制第二空:拷贝;10假设为类A 定义了构造函数“A(int aa,char*bb=NULL):a(aa),b(bb),则该类中至少包含有 个数据成员。正确答案:第一空:2;C+支持两种多态性:编译时的多态性和 时的多态性。正确答案:第一空:运行;1 2 若多个基类及其派生类中都定义了同名函数成员,要访问相应函数时,就绪要在函数名前加上 和类区分符正确答案:第一空:类名;13在已经定义了整型指针p 后,为了得到一个包括10个整数的数组,并让p 指向该数组,应使用语句。正确答案:第一空:int*p=n
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 成人教育 计算机语言 VC 期末考试 复习题 参考答案
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内