【计算机类职业资格】二级C++笔试-118及答案解析.doc
《【计算机类职业资格】二级C++笔试-118及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试-118及答案解析.doc(26页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试-118 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.有如下 4 个语句: eoutAsetfill($)leflsetw(7)Bendl; eoutsetfill(*)leflsetw(7)ABendl; eoutAsetfill(*)rightsetw(7)Bendl; eoutsetfill(*)rightsetw(7)ABendl; 其中能显示 A*B 的是(分数:2.00)A.和B.和C.和D.和2.下列有关抽象类和纯虚函数的叙述中,错误的是(分数:2.00)A.拥有纯虚函数的类是抽象类,不能用来定义对象B.抽象
2、类的派生类若不实现纯虚函数,它也是抽象类C.纯虚函数的声明以“=0;”结束D.纯虚函数都不能有函数体3.有如下程序: #includeiostream using namespace std; class Base int x; public: Base(int n=0):x(n)coutn; int getX( )constreturn x; ; class Derived:public Base int y; public: Derived(int m,int n):y(m),Base(n)toutm; Derived(int m):y(m)coutm; ; int main( ) Der
3、ived dl(3),d2(5,7); return 0; 程序的输出结果是(分数:2.00)A.375B.357C.0375D.03574.已知 Value 是一个类,value 是 Value 的一个对象。下列以非成员函数形式重载的运算符函数原形中,正确的是(分数:2.00)A.Value operator+(Value v,inti);B.Value operator+(Value v=value,inti);C.Value operator+(Value V,int i=0);D.Value operator+(Value v=value,int i=0);5.已知枚举类型声明语句为:
4、 enumCOLORWHITE,YELLOW,GREEN=5,RED,BLACK=10; 则下列说法中错误的是(分数:2.00)A.枚举常量 YELLOW 的值为 1B.枚举常量 RED 的值为 6C.枚举常量 BLACK 的值为 10D.枚举常量 WHITE 的值为 16.有 3 个关系 R、S 和 T,如下: (分数:2.00)A.B.C.D.7.设有表示学生选课的 3 张表:学生 S(学号,姓名,性别,年龄,身份证号),课程 C(课号,课名),选课 SC(学号,课号,成绩),则表 SC 的关键字(键或码)为(分数:2.00)A.课号,成绩B.学号,成绩C.学号,课号D.学号,姓名,成绩8
5、.下列有关类继承的叙述中,错误的是(分数:2.00)A.继承可以实现软件复用B.虚基类可以解决由多继承产生的二义性问题C.派生类构造函数要负责调用基类的构造函数D.派生类没有继承基类的私有成员9.有如下程序: #includeiostream using namespaee std; class VAC public: int f( )COUStreturn 3; int f( )return 5; ; int main( ) VAC vl; const VAC v2; eoutv1.f( )v2.f( ); return 0; 程序的输出结果是(分数:2.00)A.53B.35C.55D.3
6、310.有如下类和对象的定义: class Constants public: static double getPI( )return 31416; ; Constants constants; 下列各组语句中,能输出 3.1416 的是(分数:2.00)A.coutconstants-getPI( );和 coutConstants:getPI( );B.coutconstantsgetPI( );和 coutConstants.getPI( );C.coutconstants-getPI( );和 coutConstants-getPI( );D.couteonstantsgetPI(
7、);和 coutConstants:getPI( );11.下列符号中能够作为 C+标识符的是(分数:2.00)A.constB.2aC._shapeD.-connt12.在软件开发过程中,需求分析阶段产生的主要文档是(分数:2.00)A.可行性分析报告B.软件需求规格说明书C.概要设计说明书D.集成测试计划13.有如下程序: #includeiostream using namespace std; class Amount int amount; public: Amount(int n=0):amount(n) int getAmount( )constreturn amount; Am
8、ount&operator+=(Amount(分数:2.00)A.amount+=a.amount; return; ; int main( ) Amount x(3),y(7); x+=y: coutx.getAmount( )endl; return 0; 已知程序的运行结果是 10,则下画线处缺失的表达式是 A) *thisB.thisC.&amountD.amount14.下列有关函数重载的叙述中,错误的是(分数:2.00)A.函数重载就是用相同的函数名定义多个函数B.重载函数的参数列表必须不同C.重载函数的返回值类型必须不同D.重载函数的参数可以带有默认值15.下列有关类成员的叙述中
9、,正确的是(分数:2.00)A.友元函数是类的成员函数B.类成员的默认访问权限是私有的C.类成员函数必须声明为公有的D.类的静态数据成员不能是常成员16.有如下定义: inta5=1,3,5,7,9,*p=a; 下列表达式中不能得到数值 5 的是(分数:2.00)A.a2B.a3C.*(p+2)D.*p+417.算法的有穷性是指(分数:2.00)A.算法程序的运行时间是有限的B.算法程序所处理的数据量是有限的C.算法程序的长度是有限的D.算法只能被有限的用户使用18.在数据库设计中,将 E-R 图转换成关系数据模型的过程属于(分数:2.00)A.需求分析阶段B.概念设计阶段C.逻辑设计阶段D.
10、物理设计阶段19.下面是一个模板声明的开始部分: templatetypename Tdouble 由此可知(分数:2.00)_20.结构化程序设计的基本原则不包括(分数:2.00)A.多态性B.自顶向下C.模块化D.逐步求精21.下列有关 C+流的叙述中,错误的是(分数:2.00)A.C+操作符 setw 设置的输出宽度永久有效B.C+操作符 endl 可以实现输出的回车换行C.处理文件 I/O 时,要包含头文件 fstreamD.进行输入操作时,eof( )函数用于检测是否到达文件尾22.有如下类定义: ClaSS MyClass int value; public: MyClass(in
11、t n):value(n) int getValue( )constreturn value; l; 则类 MyClass 的构造函数的个数是(分数:2.00)A.1 个B.2 个C.3 个D.4 个23.有如下程序: #includeiostream using namespace std; class GA public: virtual int f( )return 1; ; class GB:public GA public: virtual int f( )return 2; ; void show(GA g)eoutg.f( ); void display(GAg)coutg.f(
12、 ); int main( ) GA a;show((分数:2.00)A.;display(A) ; B.;display(B)C.11 2D.121224.执行下列语句段后,输出字符“*”的个数是 for(inti=50;i1;i-=2)tout*;(分数:2.00)A.24B.25C.26D.5025.下列关于栈的叙述正确的是(分数:2.00)A.栈按“先进先出”的原则组织数据B.栈按“先进后出”的原则组织数据C.只能在栈底插入数据D.不能删除数据26.在下列关键字中,不能用来表示继承方式的是(分数:2.00)A.privateB.staticC.publicD.protected27.下
13、列有关模板的叙述中,正确的是(分数:2.00)A.函数模板不能含有常规形参B.函数模板的一个实例就是一个函数定义C.类模板的成员函数不能是模板函数D.用类模板定义对象时,绝对不能省略模板实参28.已知函数 f 的原型是 void f(int *a,longB) ;,变量 v1、v2 的定义是: int v1:long v2: 下列调用语句中正确的是(分数:2.00)A.f(v1,&v2);B.f(v1,v2);C.f(&vl,&v2);D.f(&vl,v2);29.对长度为 n 的线性表排序,在最坏情况下,比较次数不是 n(n-1)/2 的排序方法是(分数:2.00)A.快速排序B.冒泡排序C
14、.直接插入排序D.堆排序30.下列有关运算符重载的叙述中,正确的是(分数:2.00)A.运算符重载是多态性的一种表现B.C+中可以通过运算符重载创造新的运算符C.C+中所有运算符都可以作为非成员函数重载D.重载运算符时可以改变其结合性31.有如下类声明: class Base protected: int amount; public: Base(int n=0):araount(n) int getAmount( )constretum amount; ; class Derived:public Base protected; int value; public: Derived(int
15、m,int n):value(n1),Base(n) int getData( )constreturn value+amount; ; 已知 x 是一个 Derived 对象,则下列表达式中正确的是(分数:2.00)A.value+xgetAmount( )B.getData( )-xgetAmount( )C.getData( )-xamountD.value+xamount32.程序流程图中带有箭头的线段表示的是(分数:2.00)A.图元关系B.数据流C.控制流D.调用关系33.有如下类定义: class Point private: static int how_many; ; _ho
16、w_many=0; 要初始化 Point 类的静态成员 how_many,在下画线处应填入的内容是(分数:2.00)A.intB.static intC.int Point:D.static int Point:34.软件设计中模块划分应遵循的准则是(分数:2.00)A.低内聚低耦合B.高内聚低耦合C.低内聚高耦合D.高内聚高耦合35.下列语句分别是不同程序中的第一个输入/输出语句,若去掉其中的“left”,则输出效果将发生变化的是(分数:2.00)A.eoutleftsetfill(*)357;B.coutleftsetw(5)357;C.eoutleftsetw(5)“ABCDE“;D.e
17、outleft“ABCDE“;二、填空题(总题数:15,分数:30.00)36.测试用例包括输入值集和 1 值集。(分数:2.00)填空项 1:_37.深度为 5 的满二叉树有 1 个叶子结点。(分数:2.00)填空项 1:_38.设某循环队列的容量为 50,头指针 front=5(指向队头元素的前一位置),尾指针 rear=29(指向队尾元素),则该循环队列中共有 1 个元素。(分数:2.00)填空项 1:_39.在关系数据库中,用来表示实体之间联系的是 1。(分数:2.00)填空项 1:_40.在数据库管理系统提供的数据定义语言、数据操纵语言和数据控制语言中, 1 负责数据的模式定义与数据
18、的物理存取构建。(分数:2.00)填空项 1:_41.在面向对象的程序设计中,将数据和处理数据的操作封装成一个整体就定义了一种事物的类型,称作“类”。类是一种抽象的概念,属于该类的一个实例称为“ 1”。(分数:2.00)填空项 1:_42.指针数组是由 1 构成的数组。(分数:2.00)填空项 1:_43.如果使用数组名作为函数参数,形实结合时,传递的是 1。(分数:2.00)填空项 1:_44.在类的对象被创建的时候, 1 函数会被自动调用。(分数:2.00)填空项 1:_45.在类中, 1 成员为类的所有对象所共享。(分数:2.00)填空项 1:_46.有如下程序: #includeios
19、tream using namespace std; class Base public: int m,n; ; class Derivedl:_Base ; class Derived2:public Derivedl public: void SetMN(int M,int N)nl:M;n=N; int GetSumMN()retum(m+n); ; int main( ) Derived2 objD; objDSetMN(3,4); cout“M+N=“objDm+bojDnendl: retum 0; 编译时只有“eout“M+N=“objD.m+bojD.nendl;”有语法错误,
20、程序的其他地方没有语法错误,请判断下画线处使用的关键字是什么。(分数:2.00)填空项 1:_47.有如下程序: #includeiostream using namespace std; class Base int b; public: Base(int i)b=i; void disp( )cout“Base:b=“b; ; class Basel:virtual public Base public: Basel(int i):Base(i) f; class Base2:virtual public Base public: Base2(int i):Base(i) ; class
21、Derived:public Base2public Basel int d; public: Derived(inl i,int j):Basel(j),Base2(J),_d=i; void disp( )cout“Derived:d=“d“: f; int main( ) Derived objD(1,2);objDdisp( ); objDBasce:disp( ); objDBascel:disp( ); objDBasce2:disp( ); return 0; 请将程序补充完整,使程序在运行时输出: Derived:d=1 Base:b:2 Base:b=2 Base:b=2(分
22、数:2.00)填空项 1:_48.如下程序声明了一个电话号码类 PhoneNumber,重载了流插入运算符,以便于电话号码的输出。请将程序补充完整。 #includeiostream #includeiomanip #includestring using namespace std; class PhoneNumber public: void setNumber(string number)this-number=number; friend_(ostream&output,const PhoneNumber&nuln) /重载流插入操作符 outputnumnumber;return o
23、utput; private: string number; ; int main( ) PhoneNumber phone; phonesetNumber(“8008100598“); cout“The phone number is:“phoneendl: return 0; (分数:2.00)填空项 1:_49.如下程序声明了一个二维图形类 TwoDShape,从其派生出矩形类 Rec。 #includeiostream #includestring using namespace std; class TwoDShape /二维图形类 char name20; public: TwoD
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 118 答案 解析 DOC
