国家二级C++机试(选择题)模拟试卷389
选择题
1.下列数据结构中,能够按照“先进后出”原则存取数据的是(B)
A. 循环队列
B. 栈
C. 队列
D. 二叉树
解析:栈按照“先进后出”(FILO)或“后进先出”(LIFO)组织数据;队列是“先进先出”(FIFO)或“后进后出”(LILO)的线性表。
2.若整型变量a、b、C、d中的值依次为:1、4、3、2。则条件表达式a<b?a:c<d?c:d的值是( )。(A)
A. 1
B. 2
C. 3
D. 4
解析:首先把c<d?c:d算出。结果为2,表达式a<b?a:c<d?c:d变为:a<b?a:2,结果为1。
3.设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为(D)
A. 1 5
B. 16
C. 20
D. 0或35
解析:循环队列的队头指针和尾指针都等于15,此循环队列中元素的个数有两种情况,第一种情况是队头指针和尾指针都是第一次到达15,此时元素个数为0:第二种情况是队头指针第一次到达15,而尾指针第二次到达15,此时元素个数为35。
4.下面程序的输出结果为( )。
#include<iostream.h>
class TestClass
{
public:
TestClass(){val++;}
static int val;
};
int TestClass::val=0:
void main()
{
TestClass cs1;
cout<<cs1.val<<\\(C)
A. 03
B. 13
C. 14
D. 24
解析:由主函数main入手,定义TestClass类的对象cs1,执行cs1.val,其中val为静态变量,根据“intTestClass::val=0;”初始化,TestClass中的TestClass(){val++;}构造函数执行后,val值为1。主函数中接着定义对象cs2,cs3,cs4。执行“cout<<cs2.val<<endl:”中的val值为4。
5.下列关于类和对象的叙述中,错误的是( )。(A)
A. 一个类只能有一个对象
B. 对象是类的具体实例
C. 类是对某一类对象的抽象
D. 类和对象的关系是一种数据类型与变量的关系
解析:此题考查的是类和对象的相关概念。类是将不同的数据和与这些数据相关的操作封装起来装在一起的集合体。对象是类的具体实例,也即类是对某一类对象的抽象,类和对象之间可以说是数据类型与变量的关系。一个类可以有无数个对象。
6.下列叙述中正确的是( )。(B)
A. 线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的
B. 线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构
C. 线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构
D. 上述三种说法都不对
解析:线性表的存储分为顺序存储和链式存储。在顺序存储中,所有元素所占的存储空间是连续的,各数据元素在存储空间中是按逻辑顺序依次存放的。所以每个元素。只存储其值就可以了,而在链式存储的方式中,将存储空间的每一个存储结点分为两部分,一部分用于存储数据元素的值,称为数据域;另一部分用于存储下一个元素的存储序号,称为指针域。所以线性表的链式存储方式比顺序存储方式的存储空间要大一些。
7.下列链表中,其逻辑结构属于非线性结构的是( )。(A)
A. 二叉链表
B. 循环链表
C. 双向链表
D. 带链的栈
解析:二叉链表作为树的存储结构。链表中结点的两个链域分别指向该结点的第一个孩子结点和下一个兄弟结点。
8.某二叉树共有12个结点,其中叶子结点只有1个。则该二叉树的深度为(根结点在第1层)( )。(D)
A. 3
B. 6
C. 8
D. 12
解析:根据二叉树的性质,度为0的结点(即叶子结点)总是比度为2的结点多一个。题目中的二叉树的叶子结点为1,因此度为2的结点的数目为0,故该=叉树为12层,每层只有一个结点。
9.软件生命周期可分为定义阶段、开发阶段和维护阶段,下面不属于开发阶段任务的是( )。(C)
A. 测试
B. 设计
C. 可行性研究
D. 实现
解析:软件生命周期是指软件产品从提出、实现、使用、维护到停止使用退役的过程。其中,定义阶段包括可行性研究与计划制定和需求分析。测试、概要设计、详细设计和实现属于开发阶段。
10.软件生命周期可分为定义阶段、开发阶段和维护阶段,下面不属于开发阶段任务的是( )。(C)
A. 测试
B. 设计
C. 可行性研究
D. 实现
解析:软件生命周期是指软件产品从提出、实现、使用、维护到停止使用退役的过程。其中,定义阶段包括可行性研究与计划制定和需求分析。测试、概要设计、详细设计和实现属于开发阶段。
11.下面描述中错误的是( )。(A)
A. 系统总体结构图支持软件系统的详细设计
B. 软件设计是将软件需求转换为软件表示的过程
C. 数据结构与数据库设计是软件设计的任务之一
D. PAD图是软件详细设计的表示工具
解析:软件设计是将软件需求转换为软件表示的过程;数据结构与数据库设计是软件设计的任务之一:PAD图,即问题分析图,是一种主要用于描述软件详细设计的图形工具。
12.数据库系统的核心是( )。(B)
A. 数据模型
B. 数据库管理系统
C. 数据库
D. 数据库管理员
解析:数据库管理系统(DBMS)是数据库的机构,它是一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等。所以,数据库管理系统是数据系统的核心。
13.如果派生类以protected方式继承基类,则原基类的protected成员和public成员在派生类中的访问属性分别是( )。(D)
A. public和public
B. public和pmtected
C. protected和public
D. protected和protected
解析:本题考查保护继承中派生类对基类的访问属性,在受保护继承中,基类的公用成员和保护成员在派生类中成了保护成员,其私有成员仍为基类私有,所以本题答案为D。
14.在数据库系统中,用户所见的数据模式为( )。(B)
A. 概念模式
B. 外模式
C. 内模式
D. 物理模式
解析:用户所见到的数据模式是外模式也称用户模式。它是用户的数据视图,它由概念模式导出。一个概念模式可以有若干个外模式,每个用户只关心与它有关的外模式,这样不仅可以屏蔽大量无关信息,而且有利于数据维护。
15.有三个关系R、S和T如下:
本文档预览:3600字符,共10031字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载