国家二级C++机试(选择题)模拟试卷443
选择题
1.下列描述中正确的是(D)
A. 数据的逻辑结构与存储结构必定是一一对应的
B. 由于计算机存储空间是向量式的存储结构,因此,数据的存储结构一定是线性结构
C. 程序设计语言中的数据一般是顺序存储结构,因此,利用数组只能处理线性结构
D. 以上三种说法都不对
解析:数据的逻辑结构是指反映数据元素之间逻辑关系的数据结构。数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构(也称数据的物理结构)。一般来说,一种数据的逻辑结构根据需要可以表示成多种存储结构,常用的存储结构有顺序、链接、索引等。
2.有如下程序:
#include
using namespace std;
int main()
{
int*p;
*p=9;
eout<<“The value at p:”<<*p;
retum 0:
编译运行程序将出现的情况是( )。(D)
A. 编译时出现语法错误,不能生成可执行文件
B. 运行时一定输出:The value at p:9
C. 运行时一定输出:The value at p:*9
D. 运行时有可能出错
解析:先定义指针变量,然后给指针变量赋初值有三种情况:①用取地址运算符“&”将变量地址赋给指针变量,如p=&a;②将一个指针变量中的地址赋给另一个指针变量,如p=p1;③给指针变量赋空值0,如q=0,表示该指针变量不指向任何变量。而不能用一个常量给指针变量赋初值,所以本题选D。
3.在面向对象方法中,不属于“对象”基本特点的是( )。(A)
A. 一致性
B. 分类性
C. 多态性
D. 标识唯一性
解析:对象具有如下特征;标识惟一性、分类性、多态性、封装性、模块独立性。
4.构成计算机软件的是( )。(D)
A. 源代码
B. 程序和数据
C. 程序和文档
D. 程序、数据及相关文档
解析:软件由两部分组成:一是机器可执行的程序和数据;二是机器不可执行的,与软件开发、运行、维护、使用等有关的文档。
5.设二叉树的前序序列为ABDEGHCFIJ,中序序列为DBGEHACIFJ。则按层次输出(从上到下,同一层从左到右)的序列为(A)
A. ABCDEFGHIJ
B. DGHEBIJFCA
C. JIHGFEDCBA
D. GHIJDEFBCA
解析:前序遍历中,第一个字母是根结点,也就是A是根结点;在中序遍历中,根结点前面的是左子树、后面的是右子树。前序中,B在A的后面,中序中在左予树中,可知B为A的左结点。中序中D在B的前面,前序中在B的后面,可知D为B的左结点,GEH为B的右子树。前序中顺序为EGH,由此可知,E为B的右结点,G为E的左结点、H为E的右结点。右子树中,前序中C在最前,因为右子树根结点,也就是A的右结点,根据前序中的子树FU和中序中的WJ子树可知F为C的右结点,I为F的左结点、J为F的右结点。由此可画出这个二叉树,然后根据二叉树,可知按层次输出(从上到下,同一层从左到右)的序列为:ABCDEFGHIJ。
6.软件设计中模块划分应遵循的准则是( )。(B)
A. 低内聚低耦合
B. 高内聚低耦合
C. 低内聚高耦合
D. 高内聚高耦合
解析:耦合性和内聚性是模块独立性的两个定性标准,各模块的内聚性越强,则耦合性越弱。软件设计应该遵循高内聚低耦合。
7.耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是( )。(B)
A. 提高耦合性降低内聚性有利于提高模块的独立性
B. 降低耦合性提高内聚性有利于提高模块的独立性
C. 耦合性是指一个模块内部各个元素间彼此结合的紧密程度
D. 内聚性是指模块间互相连接的紧密程度
解析:耦合性是反映模块间互相连接的紧密程度,内聚性是指一个模块内部各个元素间彼此接合的紧密程序。提高模块的内聚性,降低模块的耦合性是有利于模块的独立性。
8.在满足实体完整性约束的条件下( )。(A)
A. 一个关系中应该有一个或多个候选关键字
B. 一个关系中只能有一个候选关键字
C. 一个关系中必须有多个候选关键字
D. 一个关系中可以没有候选关键字
解析:在关系数据库中,实体完整性的概念是主属性不能为空。在满足实体完整性的前提下,必须在关系中存在主属性,也就是在关系中应该有候选关键字。一个关系中可以有一个或者多个候选关键字。
9.定义如下枚举类型
enum{Monday,Tuesday,Wednesday,Thrusday,Friday=2};
则下列语句正确的是( )。(A)
A. 表达式Wednesday=Friday的值是true
B. Day day;day=3
C. Day day;day=Mondday+3
D. Day day;day=Tuesday+10
解析:enum<枚举类型名>{<枚举元素表>):其中:关键词enum表示定义的是枚举类型,枚举类型名由标识符组成,而枚举元素表由枚举元素或枚举常量组成。其中enum{Monday,Tuesday,Wednesday,Thrusday,Friday=2}的值由0开始,即0,1,2,3。D中的本题中的枚举类型中的数据值Wednesday为2,而Friday的值赋值为2,所以判断Wednesday等于Friday的表达式值为真,即true。即选择A。
10.有如下类定义和变量定义:
class Parents{
public:
int publicData;
private:
int privateData;
};
class ChildA:public Parems{/*类体略*/};
class ChildB:private Parems{/*类体略*/};
ChildA a;
ChildB b;
下列语句中正确的是( )。(A)
A. tout<<a.publicData<<end1;
B. cout<<a.privat9Data<<end1;
C. cout<<b.publicData<<end1;
D. cout<<b.privateData<<end1;
解析:基类Parents的私有成员privateData在派生类ChildA和ChildB中是不可以访问,所以选项B、D是错误,而派生类ChildB私有继承基类Parents,所以基类Parents的公有成员publicData在派生类ChildB中变为私有成员,只能在派生类ChildB内部访问,因而选项C是错误的。派生类ChildA公有继承基类Parents,所以基类Parents的公有成员publicData在派生类ChildA中可以访问。
11.有如下程序:
#include<iostream>
using namespace std;
本文档预览:3600字符,共7155字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载