首页 > 全部 > 二级C++ > 国家二级(C++)机试模拟试卷265

国家二级(C++)机试模拟试卷265

本单篇文档共16020字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C++ 模拟试卷 1040人下载
价格: 2.00 原价:¥8.80
收藏

国家二级(C++)机试模拟试卷265

选择题

1.下列关于虚函数的说明中,正确的是( )。(B)

A. 从虚基类继承的函数都是虚函数

B. 虚函数不得是静态成员函数

C. 只能通过指针或引用调用虚函数

D. 抽象类中的成员函数都是虚函数

解析:在某基类中声明为virtual并在一个或多个派生类中被重新定义的成员函数。虚函数必须是基类的非静态成员函数,其访问权限可以是protected或public。如果一个类包含了纯虚函数,称此类为抽象类。所以本题答案为B。

2.有如下程序:

#include

using name$paee std;

class Base

{

private:

void fun1()const{cout<<\\(B)

A. ①②③④

B. ①②③

C. ②③④

D. ①④

解析:本题考查保护继承中派生类对基类的访问属性,受保护继承中,基类的公用成员和保护成员在派生类中成r保护成员,其私有成员仍为基类私有,保护基类的所有成员在派生类中都被保护起来,在类外不能访问,所以①②③错误。

3.有如下类声明:

class TestClass

{

intn;

public:

TestClass(int i=0):n(i){}

void setValue(int n0);

};

下面关于setValue成员函数的实现中,正确的是( )。

B

解析:C++中类成员函数的实现形式为:

返回类型类名::成员函数名(参数列表){代码块}

4.由于常对象不能被更新,因此( )。(A)

A. 通过常对象只能调用它的常成员函数

B. 通过常对象只能调用静态成员函数

C. 常对象的成员都是常成员

D. 通过常对象可以调用任何不改变对象值的成员函数

解析:本题考查常对象的基本知识,常对象只能调用它的常成员函数,而不能调用非const函数,常对象的成员函数不一定都是常成员函数,只需保证其数据成员是常数据成员即可。所以本题选A。

5.有如下程序:

#include

using namespace std;

class Base {

public:

void fun() { cout<<\\(B)

A. Base.fun();

B. Base::fun();

C. Base->fun();

D. fun();

解析:本题考查公用继承对基类成员的访问属性。在公用继承中,基类的公用成员和保护成员在派生类中保持原有的访问属性,其私有成员仍为基类私有。本题中想要输出Base::fun,则必须调用基类的公用成员函数fun,所以使用Base::fun();来调用基类的成员函数fun。

6.有如下程序:

#include

using namespace std;

class Pair{

int m,n;

public:

Pair(int J,int k):m(j),n(k){}

int get(){retum m;}

int get()eonst{return m+n;}

};

int main()t

Pair a(3,5);

eonst Pair b(3,5);

eout<<a.get()<<b.get();

return 0;

}

执行这个程序的输出结果是( )。(B)

A. 33

B. 38

C. 83

D. 88

解析:本题考查常对象、常成员函数及构造函数。常对象只能调用常成员函数,所以本题中,对象a为普通对象,执行a.get()后,会执行默认构造函数,输出3;对象b为常对象,执行b.get()后,会执行常构造函数,输出8。

7.有如下程序:

#include

using namespace std;

classA

{

public:

A(){cout<<“A”;}

};

class B{public:B(){cout<<“B”;));

class C:public A

{

B b:

public:

C(){cout<<“C”;}

);

int main(){C obj;return 0;}

执行后的输出结果是( )。(A )

A. ABC

B. BAC

C. ACB

D. CBA

解析:C++程序中的执行子类,首先执行基类 的构造函数,然后执行数据成员类的构造函数,最后执行子类本身的构造函数,所以输出结果为ABC。

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

A. 存储结构

B. 物理结构

C. 逻辑结构

D. 线性结构

解析:数据的逻辑结构反映的是数据元素之间的逻辑关系,与使用的计算机无关。

9.将E-R图转换为关系模式时,实体和联系都可以表示为( )。(C)

A. 属性

B. 键 c)关系

C. 域

解析:从E-R图到关系模式的转换是比较直接的,实体与联系都可以表示成关系,E-R图中属性也可以转换成关系的属性。

10.假定a=3,下列程序的运行结果是( )。

#include

int fun(int n);

void main()

{cout<<\\(C)

A. 4

B. 8

C. 9

D. 20

解析:由程序main主函数入手,调用fun函数获得返回值result输出。题目中假定a=3,即调用语句fun(a)中的输入参数为a,进入fun函数,在for循环中当i小于等于n,即输入参数3时,循环3次执行“p*=i;restllt+=p:”语句。即执行三次p=p*i,result=restult+p.result的结果为9 返回的fun函数结果为9,即“cout<<result<<endl;”输出9。

11.将x+y*z中的“+”用成员函数重载,“*”用友元函数重载应写为( )。(B)

A. operator+(operator*(y,z))

B. x.operator+(operator*(y’z))

C. x.operator+(x*(y,z)

本文档预览:3600字符,共16020字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级(C++)机试模拟试卷265

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号