一、选择题(每小题2分,共70分)
(1)下列叙述中正确的是
A)栈是“先进先出”的线性表
B)队列是“先进后出”的线性表
C)循环队列是非线性结构
D)有序线性表既可以采用顺序存储结构,也可以采用链式存储结构
(2)支持子程序调用的数据结构是
A)栈
B)树
C)队列
D)二叉树
(3)某二叉树有5个度为z的结点,则该二叉树中的叶子结点数是
A)10
B)8
C)6
D)4
(4)下列排序方法中,最坏情况下比较次数最少的是
A)冒泡排序
B)简单选择排序
C)直接插入排序
D)堆排序
(5)软件按功能可以分为: 应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是
A)编译程序
B)操作系统
C)教务管理系统
D)汇编程序
(6)下面叙述中错误的是
A)软件测试的目的是发现错误并改正错误
B)对被调试的程序进行“错误定位”是程序调试的必要步骤
C)程序调试通常也称为Debug
D)软件测试应严格执行测试计划,排除测试的随意性
(7)耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是
A)提高耦合性降低内聚性有利他哦高模块的独立性
B)降低耦合性提高内聚性有利于提高模块的独立性
C)耦合性是指一个模块内部各个元索间彼此结合的紧密程度
D)内聚性是指模块间互相连接的紧密程度
(8)数据库应用系统中的核心问题是
A)数据库设计
B)数据库系统设计
C)数据库维护
D)数据库管理员培训
(9)有两个关系R, S如下:
由关系R通过运算得到关系S,则所使用的运算为
A)选择
B)投影
C)插入
D)连接
(10)将E-R图转换为关系模式时,实体和联系都可以表示为
A)属性
B)键
C)关系
D)域
(11)对C++编译器区分重载函数无任何意义的信息是
A)参数类型
B)参数个数
C)返回值类型
D)常成员函数关键字coast
(12)有如下类定义和变量定义:
class A{
publie:
A(){data=0;}
~A(){}
int GetData ( ) coast { return data;}
void SetData(int n) {data=n;}
private:
int data;
};
ccnst A a;
A b;
下列函数调用中错误的是
A)a ata();
B)a ata(10);
C)b ata();
D)b ata(10);
(13)有如下类定义和变量定义:
class Parents{
public:
int publicuata;
private:
int privateData;
};
class ChildA:public Parents{/*类体略*/};
class ChildB:private Parents{/*类体略*/);
ChildA a;
ChildBb;
下列语句中正确的是
A)cout< B)cout< C)cout< D)cout<
(14)运算符重载时不需要保持的性质是
A)操作数个数
B)操作数类型
C)优先级
D)结合性
(15)下列关于函数模板的描述中,错误的是
A)从模板实参表和从模板函数实参表获得信息矛盾时,以模板实参的信息为准
B)对于常规参数所对应的模板实参,任何情况下都不能省略
C)虚拟类型参数没有出现在模板函数的形参表中时,不能省略模板实参
D)模板参数表不能为空
(16)要建立文件流并打开当前目录下的文件用于输入,下列语句中错误的`是
A)ifstream fin=(“”);
B)ifstream*fir.=new ifstream(“”);
C)ifstream fin; (“”);
D)ifstream *fin=new ifstream( );fin一>open(“”);
(17)下列描述中,不属于面向对象思想主要特征的是
A)封装性
B)跨平台性
C)继承性
D)多态性
(18)有如下程序段:
Tnt i=4;int j=l;
int main(){
int i=8,j=i;
cout< }
运行时的输出结果是
A)44
B)41
C)88
D)81
(19)有如下程序段:
int i=5;
while(int i=0){cout《'*';i--;}
运行时输出“*”的个数是
A)0
B)1
C)5
D)无穷
(20)己知有数组定义
char a[3][4];
下列表达式中错误的是
A)a[2]=“WIN”
B)strcpy(a[2],“WIN”)
C)a [2][3]='W'
D)a[0][1]=a[0][1]
(21)已知函数fun的原型为
int fun(int,int,int);
下列重载函数原型中错误的是
A)char fun(int,int);
B)double fun(int,int,double);
C)int fun(int,char*);
D)float fun (int, int, int);
(22)建立一个类对象时,系统自动调用
A)析构函数
B)构造函数
C)静态函数
D)友元函数
(23)通过派生类的对象可直接访问其
A)公有继承基类的公有成员
B)公有继承基类的私有成员
C)私有继承基类的公有成员
D)私有继承基类的私有成员
(24)己知表达式++a中的“++”是作为成员函数重载的运算符,则与十+a等效的运算符函数调用形式为
A)a ator++(1)
B)operator++(a)
C)operator++(a,l)
D)ator++( )
(25)在定义一个类模板时,模板形参表是用一对括号括起来的,所采用的括号是
A)( )
B)[ ]
C)< >
D){ }
(26)当使用ifstream流类定义一个流对象并打开一个磁盘文件时,文件的默认打开方式为
A)ios_base::in
B)ios_base::in|ios_base::out
C)ios_base::out
D)ios_base::in&ios_base::out