1、2006年 4月全国计算机等级考试二级 C+语言程序设计笔试 一、选择题(1)(35)每小题 2分,共 70分)下列各题 A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。(1)下列选项不属于结构化程序设计方法的是A)自顶向下 B)逐步求精C)模块化 D)可复用(2)两个或两个以上模块之间关联的紧密程度称为A)耦合度 B)内聚度C)复杂度 D)数据传输特性(3)下列叙述中正确的是A)软件测试应该由程序开发者来完成B)程序经调试后一般不需要再测试C)软件维护只包括对程序代码的维护D)以上三种说法都不对(4)按照“后进先出”原则组织数据的
2、数据结构是A)队列 B)栈C)双向链表 D)二叉树(5)下列叙述中正确的是A)线性链表是线性表的链式存储结构B)栈与队列是非线性结构C)双向链表是非线性结构D)只有根结点的二叉树是线性结构(6)对如下二叉树进行后序遍历的结果为A)ABCDEF B)DBEAFCC)ABDECF D)DEBFCA(7)在深度为 7的满二叉树中,叶子结点的个数为A)32 B)31 C)64 D)63(8)“商品”与“顾客”两个实体集之间的联系一般是A)一对一 B)一对多C)多对一 D)多对多(9)在 E-R图中,用来表示实体的图形是A)矩形 B)椭圆形 C)菱形 D)三角形(10)数据库 DB、数据库系统 DBS、
3、数据库管理系统 DBMS之间的关系是A)DB包含 DBS和 DBMS B)DBMS包含 DB和 DBSC) DBS包含 DB和 DBMS D)没有任何关系(11)下列关于 C+函数的说明中,正确的是A)内联函数就是定义在另一个函数体内部的函数B)函数体的最后一条语句必须是 return语句C)标准 C+要求在调用一个函数之前,必须先声明其原型D)编译器会根据函数的返回值类型和参数表来区分函数的不同重载形式(12)由于常对象不能被更新,因此A)通过常对象只能调用它的常成员函数B)通过常对象只能调用静态成员函数C)常对象的成员都是常成员D)通过常对象可以调用任何不改变对象值的成员函数(13)下列关
4、于虚函数的说明中,正确的是A)从虚基类继承的函数都是虚函数 B)虚函数不得是静态成员函数C)只能通过指针或引用调用虚函数 D)抽象类中的成员函数都是虚函数(14)运算符重载是对已有的运算符赋予多重含义,因此A)可以对基本类型(如 int类型)的数据,重新定义“+”运算符的含义B)可以改变一个已有运算符的优先级和操作数个数C)只能重载 C+中已经有的运算符,不能定义新运算符D)C+中已经有的所有运算符都可以重载(15)模板对类型的参数化提供了很好的支持,因此A)类模板的主要作用是生成抽象类B)类模板实例化时,编译器将根据给出的模板实参生成一个类C)在类模板中的数据成员都具有同样类型D)类模板中的
5、成员函数都没有返回值(16)下列关于 C+流的说明中,正确的是A)与键盘、屏幕、打印机和通信端口的交互都可以通过流类来实现B)从流中获取数据的操作称为插入操作,向流中添加数据的操作称为提取操作C)cin是一个预定义的输入流类D)输出流有一个名为 open的成员函数,其作用是生成一个新的流对象(17)下列符号中可以用作 C+标识符的是A)_radius B)foobar C)else D)3room(18)下列语句中,错误的是A)const int buffer=256; B)const int temp;C)const double *point; D)const double *rt =ne
6、w double(5.5);(19)有如下程序:int x=3;dox -= 2;coutfun() D)fun();(24)下面是重载为非成员函数的运算符函数原型,其中错误的是A)Fraction operator + (Fraction, Fraction);B)Fraction operator - (Fraction);C)FractionD)Fraction(25)有如下函数模板:templateT cast(U u)return u;其功能是将 U类型数据转换为 T类型数据。已知 i为 int型变量,下列对模板函数 cast的调用中正确的是A)cast(i); B)casta =
7、a; /static int g()return a; /void h(int b)Test:b = b; /private:int a;static int b;const int c;int Test:b = 0;在标注号码的行中,能被正确编译的是A) B) C) D)(30)有如下程序:#includeusing namespace std;class Apublic:A()cout int main()Derived obj;f(obj);return 0;执行这个程序的输出结果是A)Base B)Base C)Derived D)DerivedBase Derived Base De
8、rived(33)有如下程序:#includeusing namespace std;class Complexdouble re, im;public:Complex(double r, double i):re(r), im(i)double real() constreturn re;double image() constreturn im;Complexim += a.im;return *this;ostream return 0;执行上面程序的输出是 【11】 。(12)有如下程序:#includeusing namespace std;class PARENTpublic:PARENT()coutT1 FUN(T2 n) return n * 5.0;若要求以 int型数据 7为函数实参调用该模板函数,并返回一个 double型数据,则该 调用应表示为【15】 。