2008年9月二级C++笔试
考试频道小编为你收集整理2008 年 9 月二级 C++笔试试卷参考答案,请阅读!
一、选择题(每小题2分,共70分)
(1)一个栈的初始状态为空。现将元素 1、2、3、4、5、A、B、C、D、E 依次入栈,然后
再依次出栈,则元素出栈的顺序是( )。
A)123456ABCDE B)EDCBA54321C)ABCDE12345 D)54321EDCBA
(2)下列叙述中正确的是( )。
A)循环队列有队头和队尾两个指针,因此,循环队列是非线性结构
B)在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况
C)在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况
D)循环队列中元素的个数是由队头指针和队尾指针共同决定
(3)在长度为 n 的有序线性表中进行二分查找,最坏情况下需要比较的次数是()。
A)O(n) B)O(n2)
C)O(log2n) D)O(nlog2n)
(4)下列叙述中正确的是( )。
A)顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的
B)顺序存储结构只针对线性结构,链式存储结构只针对非线性结构
C)顺序存储结构能存储有序表,链式存储结构不能存储有序表
D)链式存储结构比顺序存储结构节省存储空间
(5)数据流图中带有箭头的线段表示的是( )。
A)控制流C)模块调用B)事件驱动D)数据流
(6)在软件开发中,需求分析阶段可以使用的工具是( )。
A)N-S 图C)PAD 图B)DFD 图D)程序流程图
(7)在面向对象方法中,不属于“对象”基本特点的是( )。
A)一致性C)多态性B)分类性D)标识唯一性
(8)一间宿舍可住多个学生,则实体宿舍和学生之间的联系是( )。
A)一对一C)多对一B)一对多D)多对多
(9)在数据管理技术发展的三个阶段中,数据共享最好的是()。
A)人工管理阶段
C)数据库系统阶段
(10)有三个关系 R、S 和 T 如下:
由关系 R 和 S 通过运算得到关系 T,则所使用的运算为()。
A)笛卡尔积B)交C)并D)自然连接
(11)在下列原型所示的 C++函数中,按“传值”方式传递参数的是( )。
A)void f1(int x); B)void f2(int*x);
C)void f3(const int*x); D)void f4(int&x);
(12)在 C++中,编译系统自动为一个类生成缺省构造函数的条件是( )。
A)该类没有定义任何有参构造函数B)该类没有定义任何无参构造函数
C)该类没有定义任何构造函数D)该类没有定义任何成员函数
(13)在一个派生类的成员函数中,试图调用其基类的成员函数“void f();”,但无法通过编
译。这说明( )。
A)f()是基类的私有成员C)派生类的继承方式为私有
B)f()是基类的保护成员D)派生类的继承方式为保护
(14)下列关于运算符重载的叙述中,错误的是( )。
A)有的运算符可以作为非成员函数重载
B)所有的运算符都可以通过重载而被赋予新的含义
C)不得为重载的运算符函数的参数设置默认值
D)有的运算符只能作为成员函数重载
(15)下列关于模板的叙述中,错误的是( )。
A)调用模版函数时,在一定条件下可以省略模板实参
B)可以用 int、double 这样的类型修饰符来声明模版参数
C)模板声明中的关键字 class 都可以用关键字 typename 替代
D)模板的形参表中可以有多个参数
(16)要利用 C++流进行文件操作,必须在程序中包含的头文件是( )。
A)iostream B)fstream C)strstream D)iomanip
(17)下列字符串中不能作为 C++标识符使用的是( )。
A)WHILE B)user C)_lvar D)9stars
(18)下列语句中错误的是( )。
A)const int a; B)const int a=10;C)const int*point=0; D)const int*point=new int(10);
(19)有如下程序:
#include
using namespace std;
int main(){
int sum;
for(int i=0; i<6; i+=3){
sum=i;
for(int j = i; j<6; j++)sum+=j;
}
cout< return 0; } 运行时的输出结果是( )。 A)3 B)10 C)12 D)15 (20)下列语句中,正确的是( )。 A)char*myString="Hello-World!"; B)char myString="Hello-World!"; C)char myString[11]="Hello-World!"; D)char myString[12]="Hello-World!"; (21)若已经声明了函数原型“void fun(int a, double b=0.0);”,则下列重载函数声明中正确 的是( )。 A)void fun(int a=90, double b=0.0); B)int fun(int a, double B); C)void fun(double a, int B); D)bool fun(int a, double b = 0.0); (22)有如下程序: #include using namespace std; class Sample{ public: Sample(){} ~Sample(){cout<<'*';} }; int main(){ Sample temp[2], *pTemp[2]; return 0; } 执行这个程序输出星号(*)的个数为( )。 A)1 B)2C)3D)4 (23)下列选项中,与实现运行时多态性无关的是( )。
以上是考试频道小编为你收集整理2008 年 9 月二级 C++笔试试卷参考答案