【盘点】计算机等级考试题库,二级C++语言试题

发布于 2018-10-10 10:23  编辑:simi
0
计算机等级考试题库 扫码微信刷题


小伙伴们刷计算机等级考试题库时也要劳逸结合哟!考无忧小编整理了二级C++语言试题,希望对大家有所帮助。




二级考试C++语言试题

1

综合应用题

使用VC6打开考生文件夹下的工程kt8_3,此工程包含一个源程序文件kt8_3.cpp,该文件设计了用于输出乘法九九表的类。请认真阅读已有的代码,按要求完成下列操作,将程序补充完整。

(1)定义类Table的私有数据成员xy,分别用于表示九九表中的两个乘数(x*y),它们都是int型的数据。请在注释“//**1**”之后添加适当的语句;

(2)完成类Table的成员函数print()的定义,该函数以"x*y=z"的格式打印出九九表中的一个乘法算式,请使用格式化输出函数printf实现,在注释“//**2**”之后添加适当的语句;

(3)完成类Table9的成员函数print()的定义,该函数调用基类Tableprint()函数,将九九表输出到屏幕,请在注释“//**3**”之后添加适当的语句;

(4)补充主函数,在屏幕上输出九九表,以便测试所定义的类的正确性。请在注释“//**4**”之后添加适当的语句。

注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。

源程序文件kt8_3.cpp清单如下:

#include

#include

classTable

{//**1** 考试大论坛

intz;

public:

voidprint(intx,inty,intz);};

voidTable::print(intx,inty,intz)

{//**2**}

classTable9:publicTable

{public:

voidprint();};

voidTable9::print()

{//**3**

intx,y,z;

for(i=1;i<10;i++)

{for(j=1;j   {x=i;

y=j;

z=i*j;

Table::print(y,x,z);}

printf("\n");}}

main()

{//**4**

return0;}

【参考答案】

(1)int x;

int y;

 

(2)printf( "%d*%d=%d ",x,y,z);

if(z<10) printf(" ");

(3)int i,j;

(4)Table9 t_9;

t_9.print();

【试题解析】

主要考查将具体问题抽象为类,将类的定义补充完整,并进行类定义测试的能力。

 

 

 

 

 

2

选择题

1.栈和队列的共同特点是(  )

A.都是先进先出

B.都是先进后出

C.只允许在端点处插入和删除元素

D.没有共同点

【参考答案】C

 

2.链表不具有的特点是(  )

A.不必事先估计存储空间

B.可随机访问任一元素

C.插入删除不需要移动元素

D.所需空间与线性表长度成正比

【参考答案】B

 

3.为了提高测试的效率,应该(  )

A.随机选取测试数据

B.取一切可能的输入数据作为测试数据

C.在完成编码以后制定软件的测试计划

D.集中对付那些错误群集的程序

【参考答案】D

 

4.软件生命周期中所花费用最多的阶段是(  )

A.详细设计

B.软件编码

C.软件测试

D.软件维护

【参考答案】D

 

5.下列有关数据库的描述,正确的是(  )

A.数据库是一个DBF文件

B.数据库是一个关系

C.数据库是一个结构化的数据集合

D.数据库是一组文件

【参考答案】C

 

6.算法的空间复杂度是指(  )

A.算法程序的长度 来源:考试大

B.算法程序中的指令条数

C.算法程序所占的存储空间

D.执行过程中所需要的存储空间

【参考答案】D

 

7.数据结构中,与所使用的计算机无关的是数据的(  )

A.存储结构

B.物理结构

C.逻辑结构

D.物理和存储结构

【参考答案】C

 

8.软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指(  )

A.模块间的关系

B.系统结构部件转换成软件的过程描述

C.软件层次结构

D.软件开发过程

【参考答案】B

 

9.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是(  )

A.控制流

B.加工

C.数据存储

D.源和潭

【参考答案】A

 

10.在数据库设计中,将E-R图转换成关系数据模型的过程属于(  )

A.需求分析阶段

B.逻辑设计阶段

C.概念设计阶段

D.物理设计阶段

【参考答案】B

 

 

 

 

3

1.以下C++语言中用于单行注释的是(  )

A.//

B./*

C.*/

D.|

【参考答案】A

 

2.若变量已正确定义并赋值,以下符合C++语言语法的表达式是(  )

A.a:=b+1

B.a=b=c+2

C.int18.5%3

D.a=a+7=c+b

【参考答案】B

 

3.有以下程序

#includeiostream.h

voidmain(  )

{inti=1,j=1,k=2;

if((j++||k++)&&i++)

cout<

cout<

执行后输出结果是(  )

A.1,1,2

B.2,2,1

C.2,2,2 www.ppkao.CoM

D.2,2,3

【参考答案】C

 

4.若有语句int*point,a=4;point=&a;下面均代表地址的一组选项是(  )

A.a,point,*&a

B.&*a,&a,*point

C.*&point,*point,&a

D.&a,&*point,point

【参考答案】D

 

5.若运行时给变量x输入12,则以下程序的运行结果是(  )

#include

voidmain(  )

{

intx,y;

cin>>x;

y=x>12?x+10:x-12;

cout<

cout<

}

A.0

B.22

C.12

D.10

【参考答案】A

 

6.以下关于C++类的说法中正确的是(  )

A.C++语言的默认访问权限是private

B.C++语言中的类定义,用户一定要自己定义一个构造函数用于实例化类

C.C++语言中的成员函数的实现部分一定要写在类定义外

D.C++语言中的类不能够嵌套定义

【参考答案】A

 

7.派生类对象对其基类中的什么成员是可访问的?(  )

A.公有继承的私有成员

B.私有继承的公有成员

C.私有继承的保护成员

D.保护继承的保护成员

【参考答案】D

 

8.下列关于运算符重载不正确的是(  )

A.运算符重载不能改变运算符的操作数个数

B.运算符重载不能改变运算符的优先级

C.运算符重载不能改变运算符的结合性

D.运算符重载能改变对预定义类型数据的操作方式

【参考答案】D

 

9.对于重载的运算符>>,它是一个(  )

A.用于输入的友元函数

B.用于输入的成员函数

C.用于输出的友元函数

D.用于输出的成员函数

【参考答案】A

 

10.若调用一个函数,且此函数中没有return语句,则正确的说法是该函数(  )

A.没有返回值

B.返回若干个系统默认值

C.有返回值,但返回一个不确定的值

D.能返回一个用户所希望的函数值

【参考答案】C

 

 

 

 

4

1.以下能对二维数组a进行正确初始化的语句是(  )

A.inta[2][]={{1,0,1},{5,2,3}};

B.inta[][3]={{1,2,3},{4,5,6}};

C.inta[2][4]={{1,2,3},{4,5},{6}};

D.inta[][3]={{1,0,1},{},{1,1}};

【参考答案】B

 

2.有如下程序

#include

voidmain(  )

{floatx=2.0,y;

if(x<0.0)y=0.0;

elseif(x<10.0)y=1.0/x;

elsey=1.0;

cout<

该程序的输出结果是(  )

A.0

B.0.25

C.0.5

D.1.0

【参考答案】C

 

3.C++中,表示一条语句结束的标号是(  )

A.#

B.;

C.//

D.}

【参考答案】B

 

4.已知有定义

constintD=5;

inti=1;

doublef=0.32;

charc=15;

则下列选项错误的是(  )

A.++i;

B.D--;

C.c++;

D.--f;

【参考答案】B

 

5.下面程序的功能是把316表示为两个加数的和,使两个加数分别能被1311整除,在划线处应填入的选项是(  )

#include

voidmain(  )

{inti=0,j,k;

do{i++;k=316-13*i;}while(___);

j=k/11;

cout<<316=13*<

A.k/11B.kC.k/11==0D.k=0

【参考答案】B

 

6.若已定义:

inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;

其中oi9,则对a数组不正确的引用是(  )

A.a[p-a]

B.*(&a[i])

C.p[i]

D.a[10]

【参考答案】D

 

7.函数fun的返回值是(  )

fun(char*a,char*b)

{intnum=0,n=0;

while(*(a+num)!=\0)num++;

while(b[n]){*(a+num)=b[n];num++;n++;}

returnnum;}

A.字符串a的长度

B.字符串b的长度

C.字符串ab的长度之差

D.字符串ab的长度之和

【参考答案】D

 

8.下面程序的结果为(  )

#include

intc;

classA{

private:

inta;

staticintb;

public:

A(  ){a=0;c=0;}

voidseta(  ){a++;}

voidsetb(  ){b++;}

voidsetc(  ){c++;}

voiddisplay(  ){cout<

intA::b=0;

voidmain(  )

{Aa1,a2;

a1.seta(  );

a1.setb(  ); 考试大论坛

a1.setc(  );

a2.seta(  );

a2.setb(  );

a2.setc(  );

a2.display(  );}

A.121

B.122

C.112

D.222

【参考答案】B

 

9.下列关于构造函数说法不正确的是(  )

A.构造函数必须与类同名

B.构造函数可以省略不写

C.构造函数必须有返回值

D.在构造函数中可以对类中的成员进行初始化

【参考答案】C

 

10.在重载一个运算符时,如果其参数表中有一个参数,则说明该运算符是(  )

A.一元成员运算符

B.二元成员运算符

C.一元友元运算符

D.选项B和选项C都可能

【参考答案】D

 

 

 

 

 

 

5

1.表示在输出时显示小数位,和在文件输入时判断文件尾的函数分别是(  )

A.showbase(  )eof(  )

B.showpoint(  )eof(  )

C.showpoint(  )bad(  )

D.showpoint(  )good(  )

【参考答案】B

 

2.下列程序中画线处应填入的语句是(  )

classBase

{public:

voidfun(  ){cout<<Baseoffun<

classDerived:publicBase

{

voidfun(  )

{

____//显示基类的成员函数fun

cout<<Derivedoffun<

}

};

A.fun(  );

B.Base.fun(  );

C.Base::fun(  );

D.Base->fun(  );

【参考答案】C

 

3.在位运算中,操作数每右移一位,其结果相当于(  )

A.操作数乘以2

B.操作数除以2

C.操作数乘以4

D.操作数除以4

【参考答案】B

 

4.一个类的友元函数能够访问该类的(  )

A.私有成员

B.保护成员

C.公有成员

D.所有成员

【参考答案】D

 

5.下面程序的输出结果是(  )

#include

#include

voidmain(  )

{

charp1[10],p2[10];

strcpy(p1,abc);

strcpy(p2,ABC);

charstr[50]xyz;

strcpy(str+2,strcat(p1,p2));

cout<

}

A.xyzabcABC

B.zabcABC

C.xyabcABC

D.yzabcABC

【参考答案】C

 

6.数据结构作为计算机的一门学科,主要研究数据逻辑结构、对各种数据结构进行运算,及( )

A.数据的存储结构

B.计算方法

C.数据映象

D.逻辑存储

【参考答案】 A

 

7.在计算机中,算法是指( )

A.加工方法

B.解题方案的准确而完整的描述

C.排序方法

D.查询方法

【参考答案】 B

 

8.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( )

A.软件投机

B.软件危机

C.软件工程

D.软件产生

【参考答案】 B

 

9.开发大型软件时,产生困难的根本原因是( )

A.大系统的复杂性

B.人员知识不足

C.客观世界千变万化

D.时间紧、任务重

【参考答案】 A

 

10.数据库、数据库系统和数据库管理系统之间的关系是( )

A.数据库包括数据库系统和数据库管理系统

B.数据库系统包括数据库和数据库管理系统

C.数据库管理系统包括数据库和数据库系统

D.3者没有明显的包含关系

【参考答案】 B

 

 

 

 

6

填空题

 

1.算法的基本特征是可行性、确定性、【1】和拥有足够的情报。

【参考答案】

1】有穷性

 

2.在面向对象的程序设计中,类描述的是具有相似性质的一组【2】。

【参考答案】

2】对象

 

3.数据库管理系统常见的数据模型有层次模型、网状模型和【33种。

【参考答案】

3】关系模型

 

4.一个类可以从直接或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的【4】。

【参考答案】

4】可重用性

 

5.关系操作的特点是【5】操作。

【参考答案】

5】集合

 

6.C++语言中关键字运算符有new,delete和【6】。

【参考答案】

6sizeof

 

7.以下程序的输出结果是【7】。

#include

classobject

{private:

intval;

public:

object(  );

object(inti);

~object(  );};

object::object(  )

{val=0;

cout<<Defaultconstructorforobject<

object::object(inti)

{vali;

cout<<Constructorforobject<

object::~object(  )

{cout<<Destructorforobject<

classcontainer{private:

objectone;

objecttwo;

intdata;

public:

container(  );

container(inti,intj,intk);

~container(  );};

container::container(  )

{cata=0;

cout<<Defaultconstructorforcontainer<

container::container(inti,intj,intk):two(i),one(j)

{data=k;

cout<<Constructorforcontainer<

container::~container(  )

{cout<<Destructorforcontainer<

voidmain(  )

{containeranObj(5,6,10);}

【参考答案】

7Constructorforobject6

Constructorforobject5

Constructorforcontainer

Destruct

 

8.静态成员函数可以直接访问类的【8】成员,不能直接访问类的【9】成员。

【参考答案】

8】静态【9】非静态

 

9.表达式x.operator+(y.operator++(0))还可以写成【10】。

【参考答案】

10x+y++x+(y++)

 

10.C++语言的结构化程序设计中,【11】是程序的基本组成单元;C++语言的面向对象设计框架中,【12】是程序的基本组成单元。

【参考答案】

11】函数【12】类

 

11.C++语言提供的基本控制结构可以分为3种类型:顺序结构、【13】和循环结构。

【参考答案】

13】选择结构

 

12.C++语言的参数传递机制包括传值和传地址两种,如果调用函数时,需要改变实参或者返回多个值,应该采取【14】方式。

【参考答案】

14】传地址

 

13.继承的方式有公有继承、私有继承和【153种。

【参考答案】

15】保护继承



考无忧小编为大家介绍一款实用的考无忧网校:计算机等级考试题库,涵盖了计算机等级各方面内容,同样所有习题交互式答题,有答案,有解析,相信会在您的备考道路上,助您一臂之力!以上的二级C++语言试题,也会助您考试成功的!





文章推荐:

全国计算机等级考试可以不考一级直接考二级吗?

2018年全国计算机等级考试题库“二级MS Office 高级应用考试大纲”

全国计算机等级考试报考成功后可以退费吗?(内附计算机等级考试题库)



温馨提示:

考试想拿高分吗?更多计算机等级考试题库二级ms office试题请点击查看>>>二级ms office

想要了解更多的计算机等级考试题库请点击下载>>>计算机等级考试题库

想知道更多关于计算机等级考试题库的最新资讯吗?点击进入>>>计算机等级考试题库资讯


本文网址:http://www.k51.com.cn/info/jsjdjks/1810/1049553.html
选择分享到: