国家二级C++机试(选择题)模拟试卷350
选择题
1.在一棵二叉树上,第5层的结点数最多是( )。(D)
A. 8
B. 9
C. 15
D. 16
解析:根据二叉树的性质:二叉树第i(i>1)层上至多有2i-1个结点。得到第5层的结点数最多是16个。
2.一个栈的初始状态为空。现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是( )。(B)
A. 12345ABCDE
B. EDCBA54321
C. ABCDE12345
D. 54321EDCBA
解析:栈是按照“先进后出”或“后进先出”的原则组织数据的。所以出栈顺序是EDCBA54321。
3.有如下函数模板:
template<class T>T square(T x){return x,x;}
其中T是( )。(C)
A. 函数形参
B. 函数实参
C. 模板形参
D. 模板实参
解析:此题考查的是函数模板。声明一个函数模板的格式是:
template<模板形参表声明>函数声明,{函数体}
其中的<模板形参表声明>是由一个或多个“模板形参”组成的,每个“模板形参”可具有以下几种形式:typename参数名;class参数名;类型修饰参数名。
4.下面的描述中,正确的是( )。(A)
A. virtual可以用来声明虚函数
B. 含有纯虚函数的类是不可以用来创建对象的,因为它是虚基类
C. 即使基类的构造函数没有参数,派生类也必须建立构造函数
D. 静态数据成员可以通过成员初始化列表来初始化
解析:在基类中用virtual声明成员函数为虚函数,所以A是正确的。纯虚函数是在声明虚函数时被“初始化”为0的虚函数。纯虚函数是一种特殊的虚函数,它没有具体的实现。静态数据成员函数只能在类外进行初始化。
5.结构化程序设计的基本原则不包括( )。(A)
A. 多元性
B. 自顶向下
C. 模块化
D. 逐步求精
解析:结构化程序设计方法的主要原则可以概括为:自顶向下,逐步求精,模块化和限制使用GOTO语句,其中不包括多态性。
6.有如下程序:
#include
using namespace std;
void fl(int&x){x++;}
void f2(int x){++x;}
int main(){
int x=10,y=12;
f1(x);
f2(y);
cout<<x+y<<endl;
return 0;
}
运行这个程序的输出结果是( )。(B)
A. 22
B. 23
C. 24
D. 25
解析:在函数f1(int&x){x++;}中,是对变量x的引用,所以当在-main函数中执行“fl(x);”语句后,变量x的值等于11,而在函数void f2(int x){++x;)中,对变量x的传递调用,在main函数中执行“f2(y);”语句后,变量y的值仍然等于12,所以输出x+y的值等于23。
7.在软件开发中,需求分析阶段产生的主要文档是( )。(D)
A. 软件集成测试计划
B. 软件详细设计说明书
C. 用户手册
D. 软件需求规格说明书
解析:在软件开发过程中,需求分析阶段产生的主要文档是软件需求规格说明书。
8.两个或两个以上模块之间关联的紧密程度称为( )。(A)
A. 耦合度
B. 内聚度
C. 复杂度
D. 数据传输特性
解析:模块的独立性是指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系较少且接口简单。衡量软件的模块独立性使用:内聚性和耦合性两个定性度量标准。内聚性是对一个模块内部各个元素彼此结合的紧密程度的度量:耦合性是对模块间互相连接的紧密程度的度量。一般较优秀的软件设计,应尽量做到高内聚、低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。
9.有如下程序:
#include
using namespace std;
class Toy{
public:
Toy(char*一n){strcpy(name,一n);count++;)
~Toy0{count一;)
char*GetName0{return name;}
static int getCount0{return count;)
private:
char name[10];
static int count;
);
int Toy::count=0;
int main(){
Toy tl(”Snoopy”),t2(”Mickey”),t3(”Barbie”);
cout<<t 1.getCount()<<endl;
return O:
)
运行时的输出结果是( )。(C)
A. 1
B. 2
C. 3
D. 运行时出错
解析:类Toy中包含一个字符数组name和一个静态整型变量count。在程序中首先给类Toy的成员count的赋初始值0,然后在主函数中,定义了三个Toy对象t1、t2、t3,并分别对它们的name字段赋值,在赋值的同时变量count的值加l,所以最后变量count的值等于3。
10.有如下类定义:
class Sample{
public;
Sample(int x):ref(x){} ∥①
private:
Sample():ref(0){) ∥②
static int val=5; ∥③
const int ref; ∥④
);
上述程序段中,错误的语句是( )。(C)
A. ①
B. ②
C. ③
D. ④
解析:静态整型数据不能定义为类的数据成员。
11.有三个关系R、S和T如下:
(B)
A. 自然连接
B. 差
C. 交
D. 并
解析:关系T中的元组是R关系中有而s关系中没有的元组的集合,所以进行的是差的运算。
12.有三个关系R、S和T如下:
本文档预览:3600字符,共11489字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载