1、全国计算机等级考试二级 C+模拟题二 2012 年 3 月及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(每小题 2 分,共 70 分)(总题数:35,分数:70.00)1.下列叙述中正确的是(分数:2.00)A.循环队列是队列的一种链式存储结构B.循环队列是一种逻辑结构C.循环队列是队列的一种顺序存储结构D.循环队列是非线性结构2.下列叙述中正确的是(分数:2.00)A.栈是一种先进先出的线性表B.队列是一种后进先出的线性表C.栈与队列都是非线性结构D.以上三种说法都不对3.一棵二叉树共有 25 个结点,其中 5 个是叶子结点,则度为 1 的结点数为(分数:2.00)A.4
2、B.16C.10D.64.在下列模式中,能够给出数据库物理存储结构与物理存取方法的是(分数:2.00)A.逻辑模式B.概念模式C.内模式D.外模式5.在满足实体完整性约束的条件下(分数:2.00)A.一个关系中可以没有候选关键字B.一个关系中只能有一个候选关键字C.一个关系中必须有多个候选关键字D.一个关系中应该有一个或多个候选关键字6.有三个关系 R、S 和 T 如下: (分数:2.00)A.并B.差C.交D.自然连接7.软件生命周期的活动中不包括(分数:2.00)A.软件维护B.需求分析C.市场调研D.软件测试8.下面不属于需求分析阶段任务的是(分数:2.00)A.确定软件系统的性能需求B
3、.确定软件系统的功能需求C.制定软件集成测试计划D.需求规格说明书评审9.在黑盒测试方法中,设计测试用例的主要根据是(分数:2.00)A.程序外部功能B.程序数据结构C.程序流程图D.程序内部结构10.在软件设计中不使用的工具是(分数:2.00)A.系统结构图B.程序流程图C.PAD 图D.数据流图(DFD 图)11.若一个函数的原型为“int * Xfun1(int x,int“,则该函数的返回值类型为(分数:2.00)A.int *B.intC.intB.XV *(XV);C.operator *(XV);D.XV operator *(XV);15.在定义函数模板或类模板时,开头的保留字
4、是(分数:2.00)A.typenameB.templateC.classD.typedef16.若需要向一个二进制文件尾部添加数据,则该文件的打开方式为(分数:2.00)A.ios_base:appB.ios_base:binary | ios_base:outC.ios_base:outD.ios_base:binary | ios_base:app17.在开发一个 c+程序的整个过程中,第 3 个步骤为(分数:2.00)A.链接B.运行C.编辑D.编译18.若有定义“int x=4,y=5;“,则表达式“yx+?x-:y+“的值为(分数:2.00)A.3B.4C.5D.619.有如下程序
5、: #include using namespace std; int main() int i,s=0; for(i=1;sShow(); p2-Show(); delete p1; delete p2; return 0; 运行这个程序的输出结果是(分数:2.00)A.BBB.BDC.DBD.DD32.有如下类定义: class Animal public: virtual void Name()=0; ; class Koala:public Animal public: void Name()/*函数体略*/ ; 关于上述类定义,下列描述中错误的是(分数:2.00)A.类 Koala
6、是类 Animal 的派生类B.类 Koala 中的 Name 函数是一个虚函数C.类 Animal 中的 Name 函数是一个纯虚函数D.语句“Animal a;“能够建立类 Animal 的一个对象 a33.已知类 MyClock 中未显式定义构造函数,并重载了加法运算符,使得下面的语句 序列能够正确执行: MyClock c1,c2; / c2=c1+10; 由此可知,为类 MyClock 重载的“+“运算符函数的声明是(分数:2.00)A.friend MyClock operator+(MyClock,int);B.friend MyClock operator+(MyClock,M
7、yClock);C.friend MyClock operator+(int,MyClock);D.MyClock operator+(MyClock);34.下列控制对齐方式的操作符中,错误的是(分数:2.00)A.internalB.centerC.leftD.right35.有如下程序: #include using namespace std; class Mountain int height; public: Mountain(int h=0):height(h) virtual char *GetName()const return “山“; int GetHeight() co
8、nstreturn height; ; class Lushan:public Mountain public: Lushan(int d):Mountain(d) char *GetName()const return “庐山“; ; int main() Mountain *p= new Lushan(1000); cout“,用于比较两个正方形的大小,函数结果类型为 bool 类型 1(Square ;(分数:2.00)填空项 1:_50.有如下程序,请将横线处缺失部分补充完整。 #include using namespace std; template class Dataset T
9、 *data; int size; public: Dataset(T* arr,int length):size(1ength) data=new Tlength; for(int i=0;i1 int arr=2,4,6,8,10; /利用数组 arr 初始化类模板 Dataset 的对象 set 2 return 0; (分数:2.00)填空项 1:_全国计算机等级考试二级 C+模拟题二 2012 年 3 月答案解析(总分:100.00,做题时间:90 分钟)一、选择题(每小题 2 分,共 70 分)(总题数:35,分数:70.00)1.下列叙述中正确的是(分数:2.00)A.循环队列是
10、队列的一种链式存储结构 B.循环队列是一种逻辑结构C.循环队列是队列的一种顺序存储结构D.循环队列是非线性结构解析:2.下列叙述中正确的是(分数:2.00)A.栈是一种先进先出的线性表B.队列是一种后进先出的线性表C.栈与队列都是非线性结构D.以上三种说法都不对 解析:3.一棵二叉树共有 25 个结点,其中 5 个是叶子结点,则度为 1 的结点数为(分数:2.00)A.4 B.16C.10D.6解析:4.在下列模式中,能够给出数据库物理存储结构与物理存取方法的是(分数:2.00)A.逻辑模式B.概念模式 C.内模式D.外模式解析:5.在满足实体完整性约束的条件下(分数:2.00)A.一个关系中
11、可以没有候选关键字 B.一个关系中只能有一个候选关键字C.一个关系中必须有多个候选关键字D.一个关系中应该有一个或多个候选关键字解析:6.有三个关系 R、S 和 T 如下: (分数:2.00)A.并B.差C.交D.自然连接 解析:7.软件生命周期的活动中不包括(分数:2.00)A.软件维护 B.需求分析C.市场调研D.软件测试解析:8.下面不属于需求分析阶段任务的是(分数:2.00)A.确定软件系统的性能需求B.确定软件系统的功能需求C.制定软件集成测试计划D.需求规格说明书评审 解析:9.在黑盒测试方法中,设计测试用例的主要根据是(分数:2.00)A.程序外部功能B.程序数据结构C.程序流程
12、图D.程序内部结构 解析:10.在软件设计中不使用的工具是(分数:2.00)A.系统结构图 B.程序流程图C.PAD 图D.数据流图(DFD 图)解析:11.若一个函数的原型为“int * Xfun1(int x,int“,则该函数的返回值类型为(分数:2.00)A.int *B.int C.intB.XV *(XV);C.operator *(XV);D.XV operator *(XV); 解析:15.在定义函数模板或类模板时,开头的保留字是(分数:2.00)A.typename B.templateC.classD.typedef解析:16.若需要向一个二进制文件尾部添加数据,则该文件的
13、打开方式为(分数:2.00)A.ios_base:app B.ios_base:binary | ios_base:outC.ios_base:outD.ios_base:binary | ios_base:app解析:17.在开发一个 c+程序的整个过程中,第 3 个步骤为(分数:2.00)A.链接B.运行C.编辑 D.编译解析:18.若有定义“int x=4,y=5;“,则表达式“yx+?x-:y+“的值为(分数:2.00)A.3B.4C.5 D.6解析:19.有如下程序: #include using namespace std; int main() int i,s=0; for(i=
14、1;sShow(); p2-Show(); delete p1; delete p2; return 0; 运行这个程序的输出结果是(分数:2.00)A.BBB.BDC.DBD.DD 解析:32.有如下类定义: class Animal public: virtual void Name()=0; ; class Koala:public Animal public: void Name()/*函数体略*/ ; 关于上述类定义,下列描述中错误的是(分数:2.00)A.类 Koala 是类 Animal 的派生类B.类 Koala 中的 Name 函数是一个虚函数 C.类 Animal 中的 N
15、ame 函数是一个纯虚函数D.语句“Animal a;“能够建立类 Animal 的一个对象 a解析:33.已知类 MyClock 中未显式定义构造函数,并重载了加法运算符,使得下面的语句 序列能够正确执行: MyClock c1,c2; / c2=c1+10; 由此可知,为类 MyClock 重载的“+“运算符函数的声明是(分数:2.00)A.friend MyClock operator+(MyClock,int);B.friend MyClock operator+(MyClock,MyClock);C.friend MyClock operator+(int,MyClock); D.M
16、yClock operator+(MyClock);解析:34.下列控制对齐方式的操作符中,错误的是(分数:2.00)A.internalB.centerC.left D.right解析:35.有如下程序: #include using namespace std; class Mountain int height; public: Mountain(int h=0):height(h) virtual char *GetName()const return “山“; int GetHeight() constreturn height; ; class Lushan:public Moun
17、tain public: Lushan(int d):Mountain(d) char *GetName()const return “庐山“; ; int main() Mountain *p= new Lushan(1000); cout“,用于比较两个正方形的大小,函数结果类型为 bool 类型 1(Square ;(分数:2.00)填空项 1:_ (正确答案:cab)解析:50.有如下程序,请将横线处缺失部分补充完整。 #include using namespace std; template class Dataset T *data; int size; public: Dataset(T* arr,int length):size(1ength) data=new Tlength; for(int i=0;i1 int arr=2,4,6,8,10; /利用数组 arr 初始化类模板 Dataset 的对象 set 2 return 0; (分数:2.00)填空项 1:_ (正确答案:test)解析: