首页 > 全部 > 二级C++ > 国家二级C++机试(选择题)模拟试卷476

国家二级C++机试(选择题)模拟试卷476

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

国家二级C++机试(选择题)模拟试卷476

选择题

1.下面叙述中正确的是( )。(A)

A. 线性表是线性结构

B. 栈与队列是非线性结构

C. 线性链表是非线性结构

D. 二叉树是线性结构

解析:线性表是最简单的、最常用的一种线性结构。所谓线性链表指的是采用链式存储结构的线性表。栈和队列其实是一种特殊的线性表。树是一种简单的非线性结构,二叉树是树的一种。

2.若有定义语句“int i=2,j=3;”,则表达式i/j的结果是( )。(A)

A. 0

B. 0.7

C. 0.66667

D. 0.66666667

解析:由于变量i、j都是整型变量,所以两者相除所得的商也是整型数据。

3.下列叙述中正确的是( )。(B)

A. 有一个以上根结点的数据结构不一定是非线性结构

B. 只有一个根结点的数据结构不一定是线性结构

C. 循环链表是非线性结构

D. 双向链表是非线性结构

解析:在数据结构中,树这类的的数据结构只有一个根结点,但它不是线性结构。

4.下列语句中,错误的是( )。(D)

A. const int buffer:256;

B. const double,lc point:

C. int const buffer:256;

D. double*const point:

解析:const是一个C++关键字,用于限定不允许改变的变量。选项B是指向常量的指针,定义时可以不初始化;选项D是指针常量,定义时必须初始化。故答案为D。

5.某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层)( )。(D)

A. 3

B. 4

C. 6

D. 7

解析:根据二叉树的性质,度为0的结点(即叶子结点)总是比度为2的结点多一个。题目中的二叉树的叶子结点为1,因此度为2的结点的数目为0,故该二叉树为7层,每层只有一个结点。

6.面向对象方法中,继承是指( )。(D)

A. 一组对象所具有的相似性质

B. 一个对象具有另一个对象的性质

C. 各对象之间的共同性质

D. 类之间共享属性和操作的机制

解析:面向对象方法中,继承是使用已有的类定义作为基础建立新类的定义技术。广义地说,继承是指能够直接获得已有的性质和特征,而不必重复定义它们。

7.下面不属于软件工程的3个要素是(D)

A. 工具

B. 过程

C. 方法

D. 环境

解析:软件工程的3个要素是工具、过程和方法。

8.有如下类定义:

class AA{

int a;

public:

AA(int n=0):a(n){}

};

class BB:public从{

public:

BB(int n)

};

其中横线处缺失的部分是( )。

B

解析:本题考查公用继承对基类成员的访问属性。公用继承中,基类的公用成员和保护成员在派生类中保持原有访问属性,其私有成员仍为基类私有,本题中若要给派生类继承下来基类的私有成员赋值,那么只能调用基类的成员函数来对它赋值,所以本题答案为B。

9.以下程序的输出结果是( )。

#include<iostream>

using namespace std;

void fun(char**q)

{

++q;

cout<<*q<<endl;

)

main()

{

stoic char*s[]={\\(C)

A. 为空

B. HI

C. HELLO

D. TEST

解析:由程序main主函数入手,调用fun函数,在fun函数中执行“cout<<*q<<endl;”语句实现程序输出。主函数中变量char*s[]为指针数组,char**p表示p指向的字符指针数据。*p就代表p指向的字符指针。语句“p=s;”表明p指向字符指针s,而**p则是s[]中的第一个字符串“HI”。主函数将变量p传值给函数fun(char**q)中的q,在函数体内部首先执行“++q”语句,就是将q的指针指向s中的下一个字符串,即“HELLO”,所以输出语句“cout<<*q<<endl:”输出该字符串值。

10.有如下类说明:

class TestClass{

int x:

public:

TestClass(int n){x=n;}

};

class TestClass1:public TestClass{

int y;

public:

TestClass1(int a,int b);

};

在构造函数TestClass1的下列定义中,正确的是( )。

B

解析:题目中程序TestClass为基类,TestClass1为派生类,派生类构造函数的一般形式为:派生类构造函数名(总参数类表):基类构造函数名(参数列表){派生类中新增数据成员初始化语句}。派生类TestClass1的基类函数名为TestClass,总参数为int a,int b,所以选择B)。

11.下面是一个模板声明的开始部分:templatedouble…由此可知( )。(A)

A. 这可能是一个函数模板的声明

B. 这可能是一个类模板的声明

C. 这既可能是一个函数模板的声明,也可能是一个类模板的声明

D. 这肯定是一个错误的模板声明

解析:本题考查函数模板和类模板的基础知识,从ternplatedouble这里就可以看出这是一个函数模板的声明。

12.有如下类声明:

class MyBASE

{

int k:

public:

void set(int n){k=n;)

int getOconst{retum k;}

};

class MyDERIVED:protected MyBASE

{

protected:

intj;

public:

void set(int m,int n){MyBASE::set(m);j=n;}

int getoconst{return MyBASE::get0+j;}

};

则类MyDERIVED中保护的数据成员和成员函数的个数是( )。(B)

A. 4

B. 3

C. 2

D. 1

解析:此题考查的是派生与继承中的访问权限。protected派生:private->不可见: protected->priVate; public一>protected。

13.当派生类从一个基类保护继承时,基类中的一些成员在派生类中成为保护成员,这些成员在基类中原有的访问属性是( )。(B)

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

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号