【计算机类职业资格】二级C++笔试-232及答案解析.doc

上传人:towelfact221 文档编号:1324473 上传时间:2019-10-17 格式:DOC 页数:23 大小:69.50KB
下载 相关 举报
【计算机类职业资格】二级C++笔试-232及答案解析.doc_第1页
第1页 / 共23页
【计算机类职业资格】二级C++笔试-232及答案解析.doc_第2页
第2页 / 共23页
【计算机类职业资格】二级C++笔试-232及答案解析.doc_第3页
第3页 / 共23页
【计算机类职业资格】二级C++笔试-232及答案解析.doc_第4页
第4页 / 共23页
【计算机类职业资格】二级C++笔试-232及答案解析.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

1、二级 C+笔试-232 及答案解析(总分:98.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.所有在函数中定义的变量,连同形式参数,都属于( )。(分数:2.00)A.全局变量B.局部变量C.静态变量D.寄存器变量2.对下列语句正确的描述是( )。const int*x; /(1)int*const X; /(2)(分数:2.00)A.语句(1)的含义是指针变量 x 不能更改B.语句(2)的含义是指针变量 x 所指向的不能更改C.语句(2)的含义是指针变量 x 不能更改D.语句(1)和(2)是相同含义的不同定义方式3.包容类 Contain 和内嵌类 Embed

2、定义如下:#include iostream.hclass Containprivate:int x;protected:int z;public:class Embedprivate:int y;public:Embed()y=100;int Embed_Fun();MyEmbed;int Contain_Fun();对上面的定义,正确的描述是( )。(分数:2.00)A.定义类 Embed 对象的语句是:Contain:Embed embed;B.类 Contain 的成员函数 Contain_Fun()中可以用 MyEmbed.y 的方式访问类 Embed 的私有成员 yC.类 Embe

3、d 的成员函数 Embed_Fun()中可以直接访问类 Contain 和的私有成员 xD.类 Embed 的成员函数 Embed_Fun()中可以直接访问类 Contain 的保护成员 z4.下列各个选项中对字符数组赋字符串的语句中,错误的是( )。(分数:2.00)A.char s10;s=“program“;B.char s=“program“;C.char s10=“program“;D.char s10; strcpy(s,“program“);5.关于关键字 class 和 typename,下列表述正确的是( )。(分数:2.00)A.程序中所有的 typename 都可以替换为

4、 classB.程序中所有的 class 都可以替换为 typenameC.A 和 B 都正确D.A 和 B 都不正确6.在一棵二叉树上第 5 层的结点数最多是( )。(分数:2.00)A.8B.16C.32D.157.若有函数 fun(x,y),并且已经使函数指针变量 p 指向函数 fun,则使用 p 调用函数 fun 的正确方法是( )。(分数:2.00)A.(*p)fun(x,y);B.*pfun(x,y);C.(*p)(x,y)D.*p(x,y)8.类模板的模板参数( )。(分数:2.00)A.只可作为数据成员的类型B.只可作为成员的返回类型C.只可作为成员函数的参数类型D.以上三者皆

5、可9.下面关于构造函数和析构函数的描述,错误的是( )。(分数:2.00)A.析构函数中调用虚函数采用静态联编B.对虚析构函数的调用可以采用动态联编C.当基类的析构函数是虚函数时,其派生类的析构函数也一定是虚函数D.构造函数可以声明为虚函数10.下列程序的输出结果是( )。#includeiostreamusing namespace std;int main()char a=“Hello,World“;char*ptr = a;while(*ptr)if(*ptr= a else cout*ptr;ptr+;retur 0;(分数:2.00)A.HELLO, WORLDB.Hello, Wo

6、rldC.HELLO, worldD.hello, world11.下列叙述中正确的是( )。(分数:2.00)A.数据库系统是一个独立的系统,不需要操作系统的支持B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题D.数据库系统中,数据的物理结构必须与逻辑结构一致12.以下程序的执行结果为( )。#include iostream.hclass Sampleint n;public:Sample(int i) n=i;operator+() n+; /前缀重载运算符operator+(int) n+=2; /后缀重载运算符void disp()cout“n=“n

7、endl;void main()Sample A(2),B(2);A+;+B;(分数:2.00)A.disp();Adisp();An=4B.n=1C.n=3D.n=5n=3 n=2 n=4 n=613.下面对静态数据成员的描述中,正确的是( )。(分数:2.00)A.静态数据成员是类的所有对象共享的数据B.类的每个对象都有自己的静态数据成员C.类的不同对象有不同的静态数据成员值D.静态数据成员不能通过类的对象调用14.下列关于多继承二义性的描述中,错误的是( )。(分数:2.00)A.一个派生类的两个基类中都有某个同名成员,派生类中这个成员的访问可能出现二义性B.解决二义性的最常用的方法是对

8、成员名的限定法C.基类和派生类中同时出现的同名函数,也存在二义性问题D.一个派生类是从两个基类派生出来的,而这两个基类又有一个共同的基类,对该基类成员进行访问时,可能出现二义性15.若有以下程序:#include iostreamusing namespace std;class Aprivate:int a;public:A(im i)a=i;void disp()couta“,“;class Bprivate:int b;public:B(int j)b=j;void disp0coutb“,“;class C: public B,public Aprivate:int c;public:

9、C(int k):A(k-2),B(k+2)c=k;void disp0A:disp();B:disp();coutcendl;int main()C obj(10);obj.disp();return 0;程序执行后的输出结果是( )。(分数:2.00)A.10,10,10B.10,12,14C.8,10,12D.8,12,1016.在表达式 x-y 中,“-”是作为非成员函数重载的运算符。若使用显式的函数调用代替直接使用运算符“-”,这个表达式还可表示为( )。Ax.operator-(y) B operator-(y,x) C.y. operator-(x) D. operator-(x

10、,y)(分数:2.00)A.B.C.D.17.对关系 S 和 R 进行集合运算,产生的元组属于 S 中的元组,但不属于 R 中的元组,这种集合运算称为( )。(分数:2.00)A.并运算B.交运算C.差运算D.积运算18.完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的测试方法是( )。(分数:2.00)A.黑箱测试法B.白箱测试法C.错误推测法D.安装测试法19.for(int x=0,y=0;!xy+)语句执行循环的次数是( )。(分数:2.00)A.0B.5C.6D.无数次20.下述静态数据成员的特性中,( )是错误的。(分数:2.00)A.说明静态数据成员时前边要加

11、修饰符 staticB.静态数据成员要在类体外进行初始化C.引用静态数据成员时,要在静态数据成员名前加类名和作用域运算符D.静态数据成员不是所有对象所共用的21.定义如下枚举类型:enumMonday,Tuesday,Wednesday,Thmsday,Friday=2);则下列语句正确的是( )。(分数:2.00)A.表达式 Wednesday=Friday 的值是 trueB.Day day; day=3;C.Day day; day=Monday+3;D.Day day; day=Tuesday+10;22.一个( )允许用户为类定义一种模式,使得类中的某些数据成员及某些成员函数的返回值

12、能取任意类型。(分数:2.00)A.函数模板B.模板甲数C.类模板D.模板类23.在面向对象设计中,对象有很多基本特点,其中“一个系统中通常包含很多类,这些类之间呈树形结构”这一性质指的是对象的( )。(分数:2.00)A.分类性B.标识唯一性C.继承性D.封装性24.在说明一个结构体变量时,系统分配给它的存储空间是( )。(分数:2.00)A.该结构体中第一个成员所需的存储空间B.该结构体中最后一个成员所需的存储空间C.该结构体中占用最大存储空间的成员所需的存储空间D.该结构体中所有成员所需存储空间的总和25.若要把函数 void f()定义为 aClass 的友元函数,则应该在类 aCla

13、ss 的定义中加入的语句是( )。(分数:2.00)A.void f();B.static voidf();C.friend f();D.friend void f();26.命题“10m15 或 m20”的 C+语言表达式是( )。(分数:2.00)A.(m10)i+)for(j=i;j=i;j+)t=t+bibjj;coutt;(分数:2.00)A.3B.4C.1D.929.将 E-R 图转换到关系模式时,实体与联系都可以表示成( )。(分数:2.00)A.属性B.关系C.键D.域30.在 C+程序中,使用基本输入输出流需要包含的头文件是( )。(分数:2.00)A.stdio.hB.st

14、dafx.hC.iostream.hD.stream.h31.有如下程序:#include iostream.husing namespace std;class Demopublic:Demo() cout“defautt constmctor/n“; Demo(const Demo ;Demo userCode (Demo b)Demo c(b);return c;int main()Demo a,d;cout“calling userCode()/n“;d=userCode(a);return 0;执行上面程序的过程中,构造函数 Demo()和 Demo(const DemoB.oper

15、ator/( operator-(x),y);C.oper, ator - ().operator/(y);D.operator/( operator-(x);二、填空题(总题数:14,分数:28.00)36.软件危机出现于 20 世纪 60 年代末,为了解决软件危机,人们提出用 【1】 的原理来设计软件,这就是软件工程诞生的基础。(分数:2.00)填空项 1:_37.数据结构包括数据的逻辑结构、数据的 【2】 以及对数据的操作运算。(分数:2.00)填空项 1:_38.在有序列表(3,6,8,10,12,15,16,18,21,25,30)中,用二分法查找关键码值 12,所需的关键码比较次数

16、为 【3】 。(分数:2.00)填空项 1:_39.在关系运算中, 【4】 运算是对两个具有公共属性的关系所进行的运算。(分数:2.00)填空项 1:_40.数据库技术的主要特点为数据的集成性数据的高 【5】 和低冗余性、数据独立性和数据统一管理与控制。(分数:2.00)填空项 1:_41.带参数的流操纵算子 【6】 与成员函数 unsetf 执行同样的功能。(分数:2.00)填空项 1:_42.重载的流运算符函数应该被定义为类的 【7】 函数。(分数:2.00)填空项 1:_43.头文件 【8】 中包含了处理用户控制的文件操作所需的信息。(分数:2.00)填空项 1:_44.有一种只在循环语

17、句或 switch 语句中使用的流程控制语句,表示该语句的关键字是 【9】 。(分数:2.00)填空项 1:_45.已知下列程序的输出结果是 42,请将画线处缺失的部分补充完整。#include iostreamusing namespace std;class Foo int value;public:Foo 0=:value(0) void setValue(int value)【10】 = value; /给 Foo 的数据成员 value 赋值void print() cout value; ;int main()Foo f;f.setValue(42);f.print();retur

18、n();(分数:2.00)填空项 1:_46.阅读下面程序:#include iostream.hvoid main()int i,j,row=0,column=0,m;static int a33= 100,28,72,-30,2,-100;m=a00;for (i=0;i3;i+)for (j=0;j3;j+)if (aijm)m=aij;row=i;column=j;coutm“,“row“,“columnendl;该程序的功能是 【11】 ,其执行结果为上丝 【12】 。(分数:2.00)填空项 1:_47.下面程序的运行结果是 【13】 。#includeiostream.hvoid

19、 fun(ira a=a+b+i;i=i+a;void main()int x=5,y=2;fun(x,y);eoutx“,;fun(x);coutxendl;(分数:2.00)填空项 1:_48.语句 coutsetiosflagags(ios:showpos)125“/t“-125endl;的输出结果为 【14】 。(分数:2.00)填空项 1:_49.有如下类声明:class MyClassint i;private:int j;protected: int k;public: int m, n;其中,私有成员的数量为 【15】 。(分数:2.00)填空项 1:_二级 C+笔试-232

20、答案解析(总分:98.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.所有在函数中定义的变量,连同形式参数,都属于( )。(分数:2.00)A.全局变量B.局部变量 C.静态变量D.寄存器变量解析:2.对下列语句正确的描述是( )。const int*x; /(1)int*const X; /(2)(分数:2.00)A.语句(1)的含义是指针变量 x 不能更改B.语句(2)的含义是指针变量 x 所指向的不能更改C.语句(2)的含义是指针变量 x 不能更改 D.语句(1)和(2)是相同含义的不同定义方式解析:3.包容类 Contain 和内嵌类 Embed 定义如下:

21、#include iostream.hclass Containprivate:int x;protected:int z;public:class Embedprivate:int y;public:Embed()y=100;int Embed_Fun();MyEmbed;int Contain_Fun();对上面的定义,正确的描述是( )。(分数:2.00)A.定义类 Embed 对象的语句是:Contain:Embed embed; B.类 Contain 的成员函数 Contain_Fun()中可以用 MyEmbed.y 的方式访问类 Embed 的私有成员 yC.类 Embed 的成

22、员函数 Embed_Fun()中可以直接访问类 Contain 和的私有成员 xD.类 Embed 的成员函数 Embed_Fun()中可以直接访问类 Contain 的保护成员 z解析:4.下列各个选项中对字符数组赋字符串的语句中,错误的是( )。(分数:2.00)A.char s10;s=“program“; B.char s=“program“;C.char s10=“program“;D.char s10; strcpy(s,“program“);解析:5.关于关键字 class 和 typename,下列表述正确的是( )。(分数:2.00)A.程序中所有的 typename 都可以

23、替换为 class B.程序中所有的 class 都可以替换为 typenameC.A 和 B 都正确D.A 和 B 都不正确解析:6.在一棵二叉树上第 5 层的结点数最多是( )。(分数:2.00)A.8B.16 C.32D.15解析:7.若有函数 fun(x,y),并且已经使函数指针变量 p 指向函数 fun,则使用 p 调用函数 fun 的正确方法是( )。(分数:2.00)A.(*p)fun(x,y);B.*pfun(x,y);C.(*p)(x,y) D.*p(x,y)解析:8.类模板的模板参数( )。(分数:2.00)A.只可作为数据成员的类型B.只可作为成员的返回类型C.只可作为成

24、员函数的参数类型D.以上三者皆可 解析:9.下面关于构造函数和析构函数的描述,错误的是( )。(分数:2.00)A.析构函数中调用虚函数采用静态联编B.对虚析构函数的调用可以采用动态联编C.当基类的析构函数是虚函数时,其派生类的析构函数也一定是虚函数D.构造函数可以声明为虚函数 解析:10.下列程序的输出结果是( )。#includeiostreamusing namespace std;int main()char a=“Hello,World“;char*ptr = a;while(*ptr)if(*ptr= a else cout*ptr;ptr+;retur 0;(分数:2.00)A.

25、HELLO, WORLD B.Hello, WorldC.HELLO, worldD.hello, world解析:11.下列叙述中正确的是( )。(分数:2.00)A.数据库系统是一个独立的系统,不需要操作系统的支持B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题 D.数据库系统中,数据的物理结构必须与逻辑结构一致解析:12.以下程序的执行结果为( )。#include iostream.hclass Sampleint n;public:Sample(int i) n=i;operator+() n+; /前缀重载运算符operator+(int) n+=

26、2; /后缀重载运算符void disp()cout“n=“nendl;void main()Sample A(2),B(2);A+;+B;(分数:2.00)A.disp();Adisp();An=4 B.n=1C.n=3D.n=5n=3 n=2 n=4 n=6解析:13.下面对静态数据成员的描述中,正确的是( )。(分数:2.00)A.静态数据成员是类的所有对象共享的数据 B.类的每个对象都有自己的静态数据成员C.类的不同对象有不同的静态数据成员值D.静态数据成员不能通过类的对象调用解析:14.下列关于多继承二义性的描述中,错误的是( )。(分数:2.00)A.一个派生类的两个基类中都有某个

27、同名成员,派生类中这个成员的访问可能出现二义性B.解决二义性的最常用的方法是对成员名的限定法C.基类和派生类中同时出现的同名函数,也存在二义性问题 D.一个派生类是从两个基类派生出来的,而这两个基类又有一个共同的基类,对该基类成员进行访问时,可能出现二义性解析:15.若有以下程序:#include iostreamusing namespace std;class Aprivate:int a;public:A(im i)a=i;void disp()couta“,“;class Bprivate:int b;public:B(int j)b=j;void disp0coutb“,“;clas

28、s C: public B,public Aprivate:int c;public:C(int k):A(k-2),B(k+2)c=k;void disp0A:disp();B:disp();coutcendl;int main()C obj(10);obj.disp();return 0;程序执行后的输出结果是( )。(分数:2.00)A.10,10,10B.10,12,14C.8,10,12D.8,12,10 解析:16.在表达式 x-y 中,“-”是作为非成员函数重载的运算符。若使用显式的函数调用代替直接使用运算符“-”,这个表达式还可表示为( )。Ax.operator-(y) B

29、operator-(y,x) C.y. operator-(x) D. operator-(x,y)(分数:2.00)A.B.C.D. 解析:17.对关系 S 和 R 进行集合运算,产生的元组属于 S 中的元组,但不属于 R 中的元组,这种集合运算称为( )。(分数:2.00)A.并运算B.交运算C.差运算 D.积运算解析:18.完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的测试方法是( )。(分数:2.00)A.黑箱测试法 B.白箱测试法C.错误推测法D.安装测试法解析:19.for(int x=0,y=0;!xy+)语句执行循环的次数是( )。(分数:2.00)A.0

30、B.5C.6 D.无数次解析:20.下述静态数据成员的特性中,( )是错误的。(分数:2.00)A.说明静态数据成员时前边要加修饰符 staticB.静态数据成员要在类体外进行初始化 C.引用静态数据成员时,要在静态数据成员名前加类名和作用域运算符D.静态数据成员不是所有对象所共用的解析:21.定义如下枚举类型:enumMonday,Tuesday,Wednesday,Thmsday,Friday=2);则下列语句正确的是( )。(分数:2.00)A.表达式 Wednesday=Friday 的值是 true B.Day day; day=3;C.Day day; day=Monday+3;D

31、.Day day; day=Tuesday+10;解析:22.一个( )允许用户为类定义一种模式,使得类中的某些数据成员及某些成员函数的返回值能取任意类型。(分数:2.00)A.函数模板B.模板甲数C.类模板 D.模板类解析:23.在面向对象设计中,对象有很多基本特点,其中“一个系统中通常包含很多类,这些类之间呈树形结构”这一性质指的是对象的( )。(分数:2.00)A.分类性B.标识唯一性C.继承性 D.封装性解析:24.在说明一个结构体变量时,系统分配给它的存储空间是( )。(分数:2.00)A.该结构体中第一个成员所需的存储空间B.该结构体中最后一个成员所需的存储空间C.该结构体中占用最

32、大存储空间的成员所需的存储空间D.该结构体中所有成员所需存储空间的总和 解析:25.若要把函数 void f()定义为 aClass 的友元函数,则应该在类 aClass 的定义中加入的语句是( )。(分数:2.00)A.void f();B.static voidf();C.friend f();D.friend void f(); 解析:26.命题“10m15 或 m20”的 C+语言表达式是( )。(分数:2.00)A.(m10)i+)for(j=i;j=i;j+)t=t+bibjj;coutt;(分数:2.00)A.3B.4 C.1D.9解析:29.将 E-R 图转换到关系模式时,实体

33、与联系都可以表示成( )。(分数:2.00)A.属性B.关系 C.键D.域解析:30.在 C+程序中,使用基本输入输出流需要包含的头文件是( )。(分数:2.00)A.stdio.hB.stdafx.hC.iostream.h D.stream.h解析:31.有如下程序:#include iostream.husing namespace std;class Demopublic:Demo() cout“defautt constmctor/n“; Demo(const Demo ;Demo userCode (Demo b)Demo c(b);return c;int main()Demo

34、a,d;cout“calling userCode()/n“;d=userCode(a);return 0;执行上面程序的过程中,构造函数 Demo()和 Demo(const DemoB.operator/( operator-(x),y); C.oper, ator - ().operator/(y);D.operator/( operator-(x);解析:二、填空题(总题数:14,分数:28.00)36.软件危机出现于 20 世纪 60 年代末,为了解决软件危机,人们提出用 【1】 的原理来设计软件,这就是软件工程诞生的基础。(分数:2.00)填空项 1:_ (正确答案:软件工程学)解

35、析:37.数据结构包括数据的逻辑结构、数据的 【2】 以及对数据的操作运算。(分数:2.00)填空项 1:_ (正确答案:存储结构)解析:38.在有序列表(3,6,8,10,12,15,16,18,21,25,30)中,用二分法查找关键码值 12,所需的关键码比较次数为 【3】 。(分数:2.00)填空项 1:_ (正确答案:4)解析:39.在关系运算中, 【4】 运算是对两个具有公共属性的关系所进行的运算。(分数:2.00)填空项 1:_ (正确答案:自然连接)解析:40.数据库技术的主要特点为数据的集成性数据的高 【5】 和低冗余性、数据独立性和数据统一管理与控制。(分数:2.00)填空项

36、 1:_ (正确答案:共享性)解析:41.带参数的流操纵算子 【6】 与成员函数 unsetf 执行同样的功能。(分数:2.00)填空项 1:_ (正确答案:resetioflags)解析:42.重载的流运算符函数应该被定义为类的 【7】 函数。(分数:2.00)填空项 1:_ (正确答案:友元)解析:43.头文件 【8】 中包含了处理用户控制的文件操作所需的信息。(分数:2.00)填空项 1:_ (正确答案:fstream.h)解析:44.有一种只在循环语句或 switch 语句中使用的流程控制语句,表示该语句的关键字是 【9】 。(分数:2.00)填空项 1:_ (正确答案:break)解

37、析:45.已知下列程序的输出结果是 42,请将画线处缺失的部分补充完整。#include iostreamusing namespace std;class Foo int value;public:Foo 0=:value(0) void setValue(int value)【10】 = value; /给 Foo 的数据成员 value 赋值void print() cout value; ;int main()Foo f;f.setValue(42);f.print();return();(分数:2.00)填空项 1:_ (正确答案:this-value 或 Foo:value)解析:

38、46.阅读下面程序:#include iostream.hvoid main()int i,j,row=0,column=0,m;static int a33= 100,28,72,-30,2,-100;m=a00;for (i=0;i3;i+)for (j=0;j3;j+)if (aijm)m=aij;row=i;column=j;coutm“,“row“,“columnendl;该程序的功能是 【11】 ,其执行结果为上丝 【12】 。(分数:2.00)填空项 1:_ (正确答案:11找到数组 a 中的最小元素并输出其数值及行列值12-100,1,2)解析:47.下面程序的运行结果是 【1

39、3】 。#includeiostream.hvoid fun(ira a=a+b+i;i=i+a;void main()int x=5,y=2;fun(x,y);eoutx“,;fun(x);coutxendl;(分数:2.00)填空项 1:_ (正确答案:9,23)解析:48.语句 coutsetiosflagags(ios:showpos)125“/t“-125endl;的输出结果为 【14】 。(分数:2.00)填空项 1:_ (正确答案:+125-125)解析:49.有如下类声明:class MyClassint i;private:int j;protected: int k;public: int m, n;其中,私有成员的数量为 【15】 。(分数:2.00)填空项 1:_ (正确答案:2)解析:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1