计算机二级考试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"<fun();
(9)有如下程序:
#include
class BASE{
char c;
public:
BASE(char n):c(n){}
virtual~BASE(){cout<0;i- -)
k + = i;
return k;
}
(2)在用class定义一个类时,数据成员和成员函数的默认访问权限是 [2]
(3)含有纯虚函数的类称为 [3]
(4)已知intDBL(int n){return n + n;}和longDBL(long n){return n
+n;}是一个函数模板的两个实例,则该函数模板的定义是 [4]
(5)在下面程序的横线处填上适当的语句,使该程序执行结果为10.
#include
class MyClass
{ public:
MyClass(int a){x = a;}
[
5] //取x值
private
int x;
};
int main()
{ MyClass my(10);
cout<<