2005年全国计算机等级考试二级C++模拟题
公共基础知识
一、选择题
(1)下列关于栈的叙述正确的是
a)栈是非线性结构 b)栈是一种树状结构
c)栈具有先进先出的特征 d)栈具有后进先出的特征
(2)结构化程序设计所规定的三种基本控制结构是
a)输入、处理、输出 b)树形、网形、环形
c)顺序、选择、循环 d)主程序、子程序、函数
(3)结构化程序设计的一种基本方法是
a)筛选法 b)递归法 c)归纳法 d)逐步求精法
(4)如果对一个关系实施了一种关系运算后得到了一个新的关系,而且新的关系中属性个数少于原来关系中属性个数,这说明所实施的运算关系是:a)选择 b)投影 c)连接 d)并
二、填空题
1.对于输入为n个数进行快速排序算法的平均时间复杂度是( )
2.在面向对象方法学中,直接反映了用户对目标系统的要求的模型是( )
3.软件测试方法中,黑盒测试个白盒测试法是常用的方法,其中黑盒测试法主要是用于测试( )
4.关系型数据库管理系统中存储与管理数据的基本形式是( )
c++语言程序设计
一、选择题
(1)c++语言是从早期的c语言逐渐发展演变而来的.与c语言相比,它在求解问题方法上进行的最大改进是()
a)面向过程 b)面向对象 c)安全性 d)复用性
(2)c++语言的跳转语句中,对于break和continue说法正确的是()
a)break语句只应用与循环体中
b)continue语句只应用与循环体中
c)break是无条件跳转语句,continue不是
d)break和continue的跳转范围不够明确,容易产生问题
(3)for(int x=0,y=o;!x& &y<=5;y++)语句执行循环的次数是()
a)0 b)5 c)6 d)无次数
(4)考虑函数原型void test(int a,int
b=7,char='*'),下面的函数调用中,属于不合法调用的是()
a)test(5); b)test(5,8); c)test(6,'#') d)test(0,0.'*');
(5)下面有关重载函数的说法中正确的是()
a)重载函数必须具有不同的返回值类型; b)重载函数形参个数必须不同;
c)重载函数必须有不同的形参列表 d)重载函数名可以不同;
(6)下列关于构造函数的描述中,错误的是()
a)构造函数可以设置默认参数; b)构造函数在定义类对象时自动执行
c)构造函数可以是内联函数; d)构造函数不可以重载
(7)下面描述中,表达错误的是()
a)公有继承时基类中的public成员在派生类中仍是public的
b)公有继承是基类中的private成员在派生类中仍是private的
c)公有继承时基类中的protected成员在派生类中仍是protected的
d)私有继承时基类中的public成员在派生类中是private的
(8)应在下列程序划线处填入的正确语句是()
#include
class base
{ public:
void fun(){cout<<'base::fun'<};
class derived:public base
{ void fun()
{_____________ //显示调用基类的函数fun()
cout<<'derived::fun'< }
};
a)fun(); b)base.fun(); c)base::fun(); d) base->fun();
(9)有如下程序:
#include
class base{
char c;
public:
base(char n):c(n){}
virtual~base(){cout<};
class derived:public base{
char c;
public:
derived(char n):base(n+1),c(n){}
~derived(){cout<};
int main()
{ derived('x');
return 0;
}
执行上面的程序将输出()
a)xy b)yx c)x d)y
(10)在进行完任何c++流的操作后,都可以用c++流的有关成员函数检测流的状态;其中只能用于检测输入流状态的操作函数名称是()
a)fail b)eof c)bad d)good
二、填空题
(1)下面程序的打印结果是 [1]
#incude
int f(int);
int main()