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

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

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

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

选择题

1.下列方法中,不属于软件调试方法的是( )。(C )

A. 回溯法

B. 强行排错法

C. 集成测试法

D. 原因排除法

解析:软件调试主要采用以下三种方法:

强行排错法:作为传统的调试方法,其过程可概括为设置断点、程序暂停、观察程序状态、继续运行程序。

一 回溯法:该方法适合于小规模程序的排错、即一旦发现了错误,先分析错误征兆,确定最先发现“症状\\

2.C++语言程序是从( )函数开始执行的。(B)

A. ios

B. main

C. list

D. temp

解析:所有的C++语言程序都是从main函数开始执行,而普通函数的存在是为了简化main函数的复杂程度。

3.有如下程序:

#include

using namespace std;

class AA{

int n:

public:

AA(int k):n(k){}

int get(){retum n;}

int getOconst{retum n+1;}

};

int main()

{

AA a(5);

const AA b(6);

cout<<a.get0<<b.get();

retum 0:

}

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

A. 55

B. 57

C. 75

D. 77

解析:语句AAa(5)调用的是AA(/ntk):n(k){},a.get()调用int get(){return n;},结果会输出5:而常对象const AA b(6),b.get()调用的是intget()const{return+1;},会输出结果7。

4.有如下程序:

#include

using namespace std;

class A

{

public:

A(){cout<<\\(B)

A. BAA~A~B~A

B. ABA~B~A~A

C. BAA~B~A~A

D. ABA~A~B~A

解析:本题考查派生类的构造函数和析构函数,在定义一个派生类的对象时,先调用基类的构造函数,然后再执行派生类的构造函数。对象释放时,先执行派生类的析构函数,再执行基类的析构函数。所以本题答案为B。

5.有如下程序:

#include

using namespaee std;

class Basel

{

public:

Basel(int d){eout<<d;}

-Basel(){}

};

class Base2

{

public:

Base2(int d){eout<<d;}

-Base2(){}

};

class Derived:public Basel,Base2

{

public:

Derived(int a,int b,int c,int d):Basel(b),Base2(a),bl(d),b2(c){}

private:

int b1;

int b2;

};

int main()

{

Derived d(1,2,3,4);

return 0;

}

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

A. 1234

B. 2134

C. 12

D. 21

解析:本题考查派生类的构造函数和析构函数,在定义一个派生类的对象时,先调用基类的构造函数,然后再执行派生类的构造函数,对象释放时,先执行派生类的析构函数,再执行基类的析构函数。本题中定义一个派生类对象时,分别调用基类的构造函数,所以分别输出21。

6.要使程序执行后的输出结果为ABCD,应在横线处添

加语句( )。

#include

using namespace std;

class A

{

public:A0{cout<<‘A’;)

};

class B=——

{

public:B0{cout<<’B’;)

};

class C:virtual public A

{

public:C0{cout<<一C;}

(D )

A. public A

B. private A

C. protected A

D. virtual public A

解析:由主函数main入手,定义了类D对象0bi。其中D为类B和C的公有继承,A是C的虚基类。题目中要求的输出结果为“ABCD”,依次为类A,类B,类C,类D中构造函数的输出语句。为了保证基类通过多条路径被派生类继承时,即保证A只被继承一次,输出一个A,所以不但需要声明A为C的虚基类,同样也要声明A为B的虚基类。

7.下面的描述中,正确的是( )。(A)

A. virtual可以用来声明虚函数

B. 含有纯虚函数的类是不可以用来创建对象的,因为它是虚基类

C. 即使基类的构造函数没有参数,派生类也必须建立构造函数

D. 静态数据成员可以通过成员初始化列表来初始化

解析:在基类中用virtual声明成员函数为虚函数,所以A是正确的。纯虚函数是在声明虚函数时被“初始化”为0的虚函数。纯虚函数是一种特殊的虚函数,它没有具体的实现。静态数据成员函数只能在类外进行初始化。

8.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是( )。(C)

A. 编译程序

B. 操作系统

C. 教务管理系统

D. 汇编程序

解析:编译软件、操作系统、汇编程序都属于系统软件,只有c教务管理系统才是应用软件。

9.执行下列语句段后,输出字符“*”的个数是( )。

for(int i=50;i>1;–i)

cout<<’*’;(B)

A. 48

B. 49

C. 50

D. 51

解析:本题考查for循环语句,–i表示用之前先减1,邯么这个fnr循环语句只有50到2时才会输出“*”,

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

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号