【计算机类职业资格】二级C++笔试-306及答案解析.doc
《【计算机类职业资格】二级C++笔试-306及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试-306及答案解析.doc(28页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试-306 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.结构化程序设计的核心和基础是( )。(分数:2.00)A.结构化分析方法B.结构化设计方法C.结构化设计理论D.结构化编程方法2.关于纯虚函数,下列表述中正确的是( )。(分数:2.00)A.纯函数是没有给出实现版本(即无函数体定义)的虚函数B.纯虚函数的声明总是以“=0”结束C.派生类必须实现基类的纯虚函数D.含有纯虚函数的类不可能是派生类3.在面向对象方法中,( )描述的是具有相似属性与操作的一组对象。(分数:2.00)A.属性B.事件C.方法D.类4.按照“先进后
2、出”原则组织数据的数据结构是( )。(分数:2.00)A.队列B.栈C.双向链表D.二叉树5.下列关于虚函数的描述中,正确的是( )。(分数:2.00)A.虚函数是一个 static 类型的成员函数B.虚函数是一个非成员函数C.基类中采用 virtual 说明一个虚函数后,派生类中定义相同原型的函数时可不必加 virtual 说明D.派生类中的虚函数与基类中相同原型的虚函数具有不同的参数个数或类型6.有如下函数模板定义:templateclass TT func(T x,T y)return x*x+y*y;在下列对 func 的调用中,错误的是( )。(分数:2.00)A.func(3,5)
3、;B.func(3.0,5.5);C.func(3,5.5);D.funcint(3,5.5);7.阅读下面程序:#includeiostream.hvoid main()int i,j,row=0,column=0,min;static int a33=100,28,72,-30,2,-100;min=a00;for(i=0;i3;i+)for(j=0;j3;j+)if(aijlmin)min=aij;row=i;column=j;coutmin“,“row“,“columnendl;该程序的执行结果为( )。(分数:2.00)A.-100,2,3B.-100,1,2C.100,1,1D.1
4、00,0,08.有如下程序:#includeiostreamusing namespace std;class Apublic:virtual void func1()cout“A1“;void func2()cout“A2“;class B:public Apublic:void func1()cout“B1“;void func2()cout“B2“;int main() A *p=new B;p-func1();p-func2();return 0;执行该程序,屏幕上将显示输出( )。(分数:2.00)A.B1B2B.A1A2C.B1A2D.A1B29.已知枚举类型定义语句为:enum
5、TokenNAME,NUMBER,PLUS=5,MINUS,PRINT=10;则下列叙述中错误的是( )。(分数:2.00)A.枚举常量 NAME 的值为 1B.枚举常量 NUMBER 的值为 1C.枚举常量 MINUS 的值为 6D.枚举常量 PRINT 的值为 1010.下列符号中可以用作 C+标识符的是( )。(分数:2.00)A._radiusB.foobarC.elseD.3room11.有如下程序:#include iostream.husing namespace std;class Basepublic:Base()cout“BB“; f();void f()cout “Bf“
6、;class Derived: public Basepublic:Derived()cout“DD“;void f()cout“Df“;int main()Dcrivcd d; return 0;执行上面的程序将输出( )。(分数:2.00)A.BBBfDDB.BBDfDDDfC.DDD.DDBBBf12.有如下语句序列:int k=0:dok+=5;cout; while(k19);while(k-0)cout*;执行上面的语句序列输出字符“”和“*”的个数分别是( )。(分数:2.00)A.4 和 20B.5 和 20C.4 和 21D.5 和 2113.要定义一个具有 5 个元素的一维
7、数组 vect,并使其各元素的初值依次是 30,50,-88,0 和 0,则下列定义语句中错误的是( )。(分数:2.00)A.int vect5=30,50,-88;B.int vect=30,50,-88,0,0;C.int vect5=30,50,-88;D.int vect5=30,50,-88,0,0;14.假定要对类 AB 定义加号操作符重载成员函数,实现两个 AB 类对象的加法,并返回相加结果,则该成员函数的声明语句为( )。(分数:2.00)A.AB operator+(AB private:int j;protected:int k;public:int m,n;其中,私有成
8、员的数量为( )。(分数:2.00)A.0B.1C.2D.318.若执行语句:coutsetfill(*)setw(10)123“OK“endl 后将输出( )。(分数:2.00)A.* 1230KB.123*OKC.*123*OKD.123*OK*19.下列运算符中全都可以被友元函数重载的是( )。(分数:2.00)A.=,+,-,/B.,+,(),newC.-,+,*,D.,+,*20.有如下程序:#includeiostreamusing namespace std;class TestClassprivate;char c;public;TestClass (char n):c(n)T
9、estClass ()coutc;class TestClass1:public TestClassPrivate:char c;public:TestClass1(char n):TestClass (n+1),c(n)TestClass1()coutc;int main()TestClass1 obj(x);return 0;执行上面的程序输出( )。(分数:2.00)A.xyB.yxC.xD.y21.有如下程序:#include iostream.husing namespace std;class Stackpublic:Stack(unsigned n=10):size(n)rep_
10、=new int size; top=0;Stack(Stackfor(int i=0;isize;i+)rep_i=s.rep_i;top=s.top;Stack()deleterep_;void push(int(分数:2.00)A.rep_top=a; top+;int22.关于在调用模板函数时模板实参的使用,下列表述中正确的是( )。(分数:2.00)A.对于虚拟类型参数所对应的模板实参,如果能从模板函数的实参中获得相同的信息,则都可以省略B.对于虚拟类型参数所对应的模板实参,如果它们是参数表中的最后的若干个参数,则都可以省略C.对于虚拟类型参数所对应的模板实参,若能够省略则必须省略D
11、.对于常规参数所对应的模板实参,任何情况下都不能省略23.常采用的两种存储结构是( )。(分数:2.00)A.顺序存储结构和链式存储结构B.散列方法和索引方式C.链表存储结构和数组D.线性存储结构和非线性存储结构24.有如下程序:#includeiostreamusing namespace std;class TestClasspublic:virtual void fun1()cout“fun1TestClass“;virtual void fun2()cout“fun2TestClass“;class TestClass1:public TestClassvoid fun()cout“f
12、un1TestClass1“;void fun2(int x)cout“fun2TestClass1“;int main()TestClass obj1,*p;TestClass1 obj2;p=p-fun1();p-fun2();return 0;该程序执行后的输出结果是( )。(分数:2.00)A.fun1TestClass1 fun2TestClassB.fun1TestClass1 fun2TestClass1C.fun1TestClass fun2TestClassD.fun1TestClass fun2TestClass125.已知 n 是一个 int 型变量,下列语句中错误的是(
13、 )。(分数:2.00)A.long*p=new longn;B.long pn;C.long*p=new long(n);D.long p10;26.下列关于 C+流的说明中,正确的是( )。(分数:2.00)A.与键盘、屏幕、打印机和通信端口的交互都可以通过流类来实现B.从流中获取数据的操作称为插入操作, 向流中添加数据的操作称为提取操作C.cin 是一个预定义的输出流类D.输出流有一个名为 open 的成员函数,其作用是生成一个新的流对象27.已知一个有序线性表为(13,18,24,35,47,50,62,83,90,115,134),当用二分法查找值为 90的元素时,查找成功的比较次数
14、为( )。(分数:2.00)A.1B.2C.3D.928.有下列二叉树,对此二叉树前序遍历的结果为( )。(分数:2.00)A.ACFXDBEYZB.ABEFXYZCDC.ABCDEFXYZD.ABDYECFXZ29.树是结点的集合,它的根结点的数目是( )。(分数:2.00)A.有且只有 1 个B.1 或多于 1C.0 或 1D.至少有 2 个30.设 R 是一个 2 元关系,S 是一个 3 元关系,则下列运算中正确的是( )。(分数:2.00)A.R-SB.RSC.RSD.RS31.重载输入流运算符必须使用的原型为( )。(分数:2.00)A.istreamB.istreamC.istre
15、am operator(istream,类名D.类名operator(istream32.结构化程序设计主要强调的是( )。(分数:2.00)A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序的易读性33.有如下程序:#include iostream.husing namespace std;class Baseprotected:int i;public:int j;class Derived:public Baseint m;public:int n;int main()Derived d;d.i=0; /1d.j=0; /2d.m=0; /3d.n=0; /4return 0
16、;其中主函数中有两个赋值语句有错,这两个错误的赋值语句是( )。(分数:2.00)A.1和2B.1和3C.2和3D.2和434.有如下程序:#include iostreamusing namespace std;class Testpublic:Test() n+=2; Test() n-=3; static int getNum() return n; private:static int n;int Test:n=1;int main()Test* p=new Test;delete p;cout“n=“Test:getNum()endl;return 0;执行该程序的输出结果是( )。
17、(分数:2.00)A.n=0B.n=1C.n=2D.n=335.在进行了任何 C+流的操作后,都可以用 C+流的有关成员函数检测流的状态,其中只能用于检测刚进行的操作是否失败的函数名是( )。(分数:2.00)A.failB.eofC.badD.good二、填空题(总题数:15,分数:30.00)36.在结构化设计方法中,数据流图表达了问题中的数据流与加工间的关系,并且每一个 1 实际上对应一个处理模块。(分数:2.00)填空项 1:_37.结构化程序设计的三种基本结构分别是顺序、选择和 1。(分数:2.00)填空项 1:_38.二分法查找仅限于这样的表:表中的数据元素必须有序,其存储结构必须
18、是 1。(分数:2.00)填空项 1:_39.一个模块直接调用的其他模块个数称为 1。(分数:2.00)填空项 1:_40.数据库系统中实现各种数据管理功能的核心软件是 1。(分数:2.00)填空项 1:_41.如果表达式-x 中的“”是重载的类运算符,采用运算符函数调用格式,其表达式还可以表示为 1。(分数:2.00)填空项 1:_42.虚函数必须是类的 1。(分数:2.00)填空项 1:_43.多态性分为两类:编译时的多态性和 1。(分数:2.00)填空项 1:_44.在下列的程序的横线处填上适当的语句,使该程序的输出为 12。#includeiostreamusing namespace
19、 std;class TestClasspublic:int a,b;TestClass(int i,int j)a=i;b=j;class TestClass1:public TestClassint a;public:TestClass1(int x):TestClass(x,x+1)void show()_;/输出基类数据成员 a 的值?coutbendl;int main()TestClass1 d(1);d.show();return 0;(分数:2.00)填空项 1:_45.在面向对象的程序设计中,将数据和处理数据的操作封装成一个整体就定义了一种事物的类型,称作“类”。类是一种抽象
20、的概念,属于该类的一个实例叫做“ 1”。(分数:2.00)填空项 1:_46.请在下列程序中的横线处填写正确的语句。#includeiostreamusing namespace std;class Basepublic:void fun()cout“Base fun“endl;class Derivde:public Basepublic:void fun()_/调用基类的函数 fun()cout“Derived fun“endl;(分数:2.00)填空项 1:_47.已知类 sample 是一个抽象类,其成员函数 display 是无形参、无返回类型的纯虚函数,请完成其声明。class s
21、amplepublic:sample();_;(分数:2.00)填空项 1:_48.请将下列程序补充完整,使得输出结果为 bbaa。#includeiostreamusing namespace std;class Apublic:_cout“aa“;class B:public Apublic:B()cout“bb“;int main()B *p=new B;delete p;return 0;(分数:2.00)填空项 1:_49.请将下列栈类 Stack 补充完整。class Stackprivate:int pList100; /int 数组,用于存放栈的元素int top; / 栈顶元
22、素(数组下标)public:Stack():top(0)void Push(const int / 新元素 item 压入栈int Pop(void); / 将栈顶元素弹出栈;void Stack:Push(const int top+; / 栈顶指针增 1_;int Stack:Pop()if(top0) / 如果栈空,程序终止exit(1);return pListtop-;(分数:2.00)填空项 1:_50.若要访问指针变量 p 所指向的数据,应使用表达式 1。(分数:2.00)填空项 1:_二级 C+笔试-306 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数
23、:35,分数:70.00)1.结构化程序设计的核心和基础是( )。(分数:2.00)A.结构化分析方法B.结构化设计方法C.结构化设计理论 D.结构化编程方法解析:解析 结构化程序设计的核心和基础是结构化设计理论,其中包括结构化分析方法、结构化设计方法和结构化编程方法。2.关于纯虚函数,下列表述中正确的是( )。(分数:2.00)A.纯函数是没有给出实现版本(即无函数体定义)的虚函数B.纯虚函数的声明总是以“=0”结束 C.派生类必须实现基类的纯虚函数D.含有纯虚函数的类不可能是派生类解析:解析 纯虚函数是在声明虚函数时被“初始化”为。的虚函数。纯虚函数没有函数体,所以选项A)、C)不正确。纯
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 306 答案 解析 DOC
