【计算机类职业资格】C++语言笔试-5及答案解析.doc
《【计算机类职业资格】C++语言笔试-5及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】C++语言笔试-5及答案解析.doc(30页珍藏版)》请在麦多课文档分享上搜索。
1、C+语言笔试-5 及答案解析(总分:80.00,做题时间:90 分钟)一、单项选择题(总题数:40,分数:80.00)1.下面关于算法的叙述中,正确的是( )。A) 算法的执行效率与数据的存储结构无关B) 算法的有穷性是指算法必须能在执行有限个步骤之后终止C) 算法的空间复杂度是指算法程序中指令(或语句)的条数D) 以上三种描述都正确(分数:2.00)A.B.C.D.2.下列二叉树描述中,正确的是( )。A) 任何一棵二又树必须有一个度为 2 的结点B) 二叉树的度可以小于 2C) 非空二叉树有 0 个或 1 个根结点D) 至少有 2 个根结点(分数:2.00)A.B.C.D.3.如果进栈序列
2、为 A,B,C,D,则可能的出栈序列是( )。A) C,A,D,B B) B,D,C,AC) C,D,A,B D) 任意顺序(分数:2.00)A.B.C.D.4.下列各选项中,不属于序言性注释的是( )。A) 程序标题 B) 程序设计者C) 主要算法 D) 数据状态(分数:2.00)A.B.C.D.5.下列模式中,能够给出数据库物理存储结构与物理存取方法的是( )。A) 内模式 B) 外模式C) 概念模式 D) 逻辑模式(分数:2.00)A.B.C.D.6.下列叙述中,不属于软件需求规格说明书的作用的是( )。A) 便于用户,开发人员进行理解和交流B) 反映出用户问题的结构,可以作为软件开发工
3、作的基础和依据C) 作为确认测试和验收的依据D) 便于开发人员进行需求分析(分数:2.00)A.B.C.D.7.下列不属于软件工程 3 个要素的是( )。A) 工具 B) 过程 C) 方法 D) 环境(分数:2.00)A.B.C.D.8.数据库系统在其内部具有 3 级模式,用来描述数据库中全体数据的全局逻辑结构和特性的是( )。A) 外模式 B) 概念模式C) 内模式 D) 存储模式(分数:2.00)A.B.C.D.9.将 E-R 图转换到关系模式时,实体与联系都可以表示成( )。A) 属性 B) 关系 C) 记录 D) 码(分数:2.00)A.B.C.D.10.某二叉树中度为 2 的结点有
4、10 个,则该二叉树中有( )个叶子结点。A) 9 B) 10 C) 11 D) 12(分数:2.00)A.B.C.D.11.有如下程序:#includeiostreamusing namespace std;class Apublic:A() cout“A“; A() cout“A“;class B:public AA*p;public:B() cout“B“;p=new A; B() cout“B“;delete p;int main()B obj;return 0;执行这个程序的输出结果是( )A) BAAABA B) ABABAAC) BAABAA D) ABAABA(分数:2.00)
5、A.B.C.D.12.若有以下程序:#includeiostreamusing namespace std;class Apublic:A(int i,int j)a=i;b=j;void move(int x,int y)a+=x;b+=y;void show()couta“,“bend1;private:int a,b;class B:private Apublic:B(int i,int j):A(i,j) void fun()move(3,5);void f1()A:show();int main()B d(3,4);d.fun();d.f1();return ();执行程序后的结果是
6、( )A) 3,4 B) 6,8 C) 6,9 D) 4,3(分数:2.00)A.B.C.D.13.有如需程序:#includeiostreamusing 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()end1;return 0;执行后的输出结果是( )。A) n=0 B) n=1C) n=2
7、D) n=3(分数:2.00)A.B.C.D.14.假定 MyClass 为一个类,那么下列的函数说明中,( )为该类的析构函数。A) voidMyClass(); B) MyClass(int n);C) MyClass(); D) MyClass();(分数:2.00)A.B.C.D.15.下列情况中,不会调用拷贝构造函数的是( )。A) 用一个对象去初始化同一类的另一个新对象时B) 将类的一个对象赋值给该类的另一个对象时C) 函数的形参是类的对象,调用函数进行形参和实参结合时D) 函数的返回值是类的对象,函数执行返回调用时(分数:2.00)A.B.C.D.16.下列有关拷贝构造函数的描述
8、中错误的是( )。A) 拷贝构造函数是一种构造函数B) 拷贝构造函数与一般的构造函数一样,可以设置多个形参C) 每一个类中都必须有一个拷贝构造函数D) 拷贝构造函数的功能是用一个已知对象去初始化一个正在创建的对象(分数:2.00)A.B.C.D.17.类 MyClass 的定义如下,若要对 value 赋值,则下面语句正确的是( )。class MyClasspublic:MyClass()MyClass(int i) value=new int(i);int*value;A) MyClass my;my.value=10;B) MyClass my;*my.value=10;C) MyCla
9、ss my;my.*value=10;D) MyClass my(10);(分数:2.00)A.B.C.D.18.有如下程序:#includeusing namespace std;int s=0;class samplestatic int n;public:sample(int i)n=i;static void add()s+=n;int sample:n=0;int main()sample a(2),b(5);sample:add();coutsend1;return 0;程序运行后的输出结果是( )。A) 2 B) 5 C) 7 D) 3(分数:2.00)A.B.C.D.19.下列
10、运算符中不能在 C+中重载的是( )。A) ?: B) + C) - D) =(分数:2.00)A.B.C.D.20.下列重载函数中,正确的是( )。A) void fun(int a, float b);void fun(int C,float d)B) void fun(int a,float b);void fun(float a,int b)C) float fun(int a,float b);int fun(int b,float a)D) int fun(int a,int b);float fun(int a,int b)(分数:2.00)A.B.C.D.21.以下不正确的是(
11、 )。A) 语句 for(i=0; ;i+)表示无限循环B) for(; ;)表示无限循环C) for()表示无限循环D) while(1)表示无限循环(分数:2.00)A.B.C.D.22.有如下程序:int x=3;dox-=2;coutx;while(!(-x);执行这个程序的输出结果是( )。A) 1 B) 30 C) 1-2 D) 死循环(分数:2.00)A.B.C.D.23.若有以下定义,说法错误的是( )。int a=100,*p=A) 声明变量 p,其中*表示 p 是一个指针变量B) 变量 p 经初始化,获得变量 a 的地址C) 变量 p 只可以指向一个整型变量D) 变量 p
12、的值为 100(分数:2.00)A.B.C.D.24.若已定义int a=0,1,2,3,4,5,6,7,8,9),*p=a,i;其中 (分数:2.00)A.B.C.D.25.程序执行后的输出结果是( )。#include iostream.hvoid main()char flag=c ;switch(flag)case a :cout“1“end1 ;case b :cout“2“end1 ; break;case c : cout “3“end1 ;default : cout “4“end1 ; break;A) 12 B) 23 C) 34 D) 45(分数:2.00)A.B.C.D
13、.26.有如下程序:#include iostreamusing namespace std;class sampleprivate:int x,y;public:sample(int i,int j)x=i;y=j;void disp()cout“disp 1 “end1;void disp()constcout“disp2“end1;int main()const sample a(1,2);a.disp();return ();该程序运行后的输出结果是( )。A) disp 1 B) disp2C) disp1 disp2 D) 程序编译时出错(分数:2.00)A.B.C.D.27.有如
14、下类的定义,横线处的语句是( )。class TestClass_ int x,y;public:TestClass (int a=0,int b=0)x=a;y=b;static void change()y-=10;y-=10;A) public B) privateC) static D) protected(分数:2.00)A.B.C.D.28.有如下程序:#includeiostreamusing namespace std;class TestClassprotected:TestClass () coutx;TestClass (char c) coutc; ;class Tes
15、tClass 1 :public TestClasspublic:TestClass 1 (char c) coutc;int main() TestClass1 d1 (y);return 0;执行这个程序,屏幕上将显示输出( )。A) y B) yx C) xy D) yy(分数:2.00)A.B.C.D.29.下面是关于派生类声明的开始部分,其中正确的是( )。A) class virtual B:public AB) virtual class B:public AC) class B:public A virtualD) class B:virtual public A(分数:2.0
16、0)A.B.C.D.30.在函数中,可以用 auto、extern、register 和 static 这四个关键字中的一个来说明变量的存储类型,如果不说明存储类型,则默认的存储类型是( )。A) auto B) externC) register D) static(分数:2.00)A.B.C.D.31.若有以下程序:#includeiostreamusing namespace std;class TestClasspublic:void who() cout“TestClass“end1;class TestClass 1 :public TestClasspublic:void who
17、() cout“TestClass 1“end1;int main()TestClass *p;TestClass 1 obj 1;p=p-who();return 0;则该程序运行后的输出结果是( )。A) TestClass 1 B) TestClassC) 0 D) 无输出(分数:2.00)A.B.C.D.32.下列有关继承和派生的叙述中,正确的是( )。A) 如果一个派生类私有继承其基类,则该派生类对象不能访问基类的保护成员B) 派生类的成员函数可以访问基类的所有成员C) 基类对象可以赋值给派生类对象D) 如果派生类没有实现基类的一个纯虚函数,则该派生类是一个抽象类(分数:2.00)A
18、.B.C.D.33.下面叙述错误的是( )。A) 派生类可以使用 private 派生B) 对基类成员的访问必须是无二义性的C) 基类成员的访问能力在派生类中维持不变D) 赋值兼容规则也适用于多继承的组合(分数:2.00)A.B.C.D.34.下列程序的输出结果为 2,横线处应添加语句( )。#includeiostreamusing namespace std;class TestClass 1punic:void fun() cout 1 ; ;class TestClass2:public TestClass 1public:void fun() cout2; ;int main()Te
19、stClass1 *p=new TestClass2;p-fun();delete p;return 0;A) public B) privateC) virtual D) protected(分数:2.00)A.B.C.D.35.要是程序执行后的输出结果为 ABCD, 应在横线处添加的语句( )。#includeiostreamusing namespace std;class Apublic:A() coutA;class B:_public:B() coutB;class C:virtual public Apublic:C() coutC; ;class D:public B,publ
20、ic Cpublic:D() coutD; ;void main()D obj;A) public A B) private AC) protected A D) virtual public A(分数:2.00)A.B.C.D.36.下面的描述中,正确的是( )。A) virtual 可以用来声明虚函数B) 含有纯虚函数的类是不可以用来创建对象的,因为它是虚基类C) 即使基类的构造函数没有参数,派生类也必须建立构造函数D) 静态数据成员可以通过成员初始化列表来初始化(分数:2.00)A.B.C.D.37.若要把函数 void fun()定义为 TestClass 的友元函数,则应该在类 Te
21、stClass 的定义中加入的语句是( )。A) voidfriendfun() B) friendfun()C) friend void fun() D) TestClass void fun()(分数:2.00)A.B.C.D.38.已知递归函数 fun 的定义如下:intfun(intn)if(n=1)return 1;/递归结束情况else return n*fun(n-2);/递归则函数调用语句 fun(5)的返回值是( )。A) 5 B) 12 C) 15 D) 30(分数:2.00)A.B.C.D.39.字面常量 42、4.2、42L 的数据类型分别是( )。A) long,do
22、uble,int B) long,float,intC) int,double,long D) int,float,long(分数:2.00)A.B.C.D.40.下列有关内联函数的叙述中,正确的是( )。A) 内联函数在调用时发生控制转移B) 内联函数必须通过关键字 inline 来定义C) 内联函数是通过编译器来实现的D) 内联函数函数体的最后一条语句必须是 return 语句(分数:2.00)A.B.C.D.C+语言笔试-5 答案解析(总分:80.00,做题时间:90 分钟)一、单项选择题(总题数:40,分数:80.00)1.下面关于算法的叙述中,正确的是( )。A) 算法的执行效率与数
23、据的存储结构无关B) 算法的有穷性是指算法必须能在执行有限个步骤之后终止C) 算法的空间复杂度是指算法程序中指令(或语句)的条数D) 以上三种描述都正确(分数:2.00)A.B. C.D.解析:解析 算法在运行过程中需辅助存储空间的大小称为算法的空间复杂度。算法的有穷性是指一个算法必须在执行有限的步骤以后结束。2.下列二叉树描述中,正确的是( )。A) 任何一棵二又树必须有一个度为 2 的结点B) 二叉树的度可以小于 2C) 非空二叉树有 0 个或 1 个根结点D) 至少有 2 个根结点(分数:2.00)A.B. C.D.解析:解析 二叉树是由 n0 个结点的有限集合构成,此集合或者为空集,或
24、者由一个根结点及两棵互不相交的左右子树组成,并且左右子树都是二叉树。二叉树可以是空集合,根可以有空的左子树或空的右子树。二叉树不是树的特殊情况,它们是两个概念。二叉树具有如下两个特点:非空二叉树只有一个根结点。每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。3.如果进栈序列为 A,B,C,D,则可能的出栈序列是( )。A) C,A,D,B B) B,D,C,AC) C,D,A,B D) 任意顺序(分数:2.00)A.B. C.D.解析:解析 栈的操作原则为后进先出。选项 B) 中出栈顺序可按“A 进,B 进,B 出,C 进,D 进,D 出,C 出,A 出”实现。4.下列各选项中,不
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 语言 笔试 答案 解析 DOC
