【计算机类职业资格】全国计算机等级考试二级C++真题2008年4月及答案解析.doc
《【计算机类职业资格】全国计算机等级考试二级C++真题2008年4月及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】全国计算机等级考试二级C++真题2008年4月及答案解析.doc(14页珍藏版)》请在麦多课文档分享上搜索。
1、全国计算机等级考试二级 C+真题 2008年 4月及答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.程序流程图中带有箭头的线段表示的是(分数:2.00)A.图元关系B.数据流C.控制流D.调用关系2.结构化程序设计的基本原则不包括(分数:2.00)A.多态性B.自顶向下C.模块化D.逐步求精3.软件设计中模块划分应遵循的准则是(分数:2.00)A.低内聚低耦合B.高内聚低耦合C.低内聚高耦合D.高内聚高耦合4.在软件开发中,需求分析阶段产生的主要文档是(分数:2.00)A.可行性分析报告B.软件需求规格说明书C.概要设计说明书D.集成测
2、试计划5.算法的有穷性是指(分数:2.00)A.算法程序的运行时间是有限的B.算法程序所处理的数据量是有限的C.算法程序的长度是有限的D.算法只能被有限的用户使用6.对长度为 n的线性表排序,在最坏情况下,比较次数不是 n(n-1)/2的排序方法是(分数:2.00)A.快速排序B.冒泡排序C.直接插入排序D.堆排序7.下列关于栈的叙述正确的是(分数:2.00)A.栈按“先进先出”组织数据B.栈按“先进后出”组织数据C.只能在栈底插入数据D.不能删除数据8.在数据库设计中,将 E-R图转换成关系数据模型的过程属于(分数:2.00)A.需求分析阶段B.概念设计阶段C.逻辑设计阶段D.物理设计阶段9
3、.有三个关系 R. S和 T如下: (分数:2.00)A.并B.自然连接C.笛卡尔积D.交10.设有表示学生选课的三张表,学生 S(学号,姓名,性别,年龄,身份证号),课程 C(课号,课名),选课SC(学号,课号,成绩),则表 SC的关键字(键或码)为(分数:2.00)A.课号,成绩B.学号,成绩C.学号,课号D.学号,姓名,成绩11.下列有关函数重载的叙述中,错误的是(分数:2.00)A.函数重载就是用相同的函数名定义多个函数B.重载函数的参数列表必须不同C.重载函数的返回值类型必须不同D.重载函数的参数可以带有默认值12.下列有关类成员的叙述中,正确的是(分数:2.00)A.友元函数是类的
4、成员函数B.类成员的默认访问权限是私有的C.类成员函数必须声明为公有的D.类的静态数据成员不能是常成员13.下列有关类继承的叙述中,错误的是(分数:2.00)A.继承可以实现软件复用B.虚基类可以解决由多继承产生的二义性问题C.派生类构造函数要负责调用基类的构造函数D.派生类没有继承基类的私有成员14.下列有关运算符重载的叙述中,正确的是(分数:2.00)A.运算符重栽是多态性的一种表现B.C+中可以通过运算符重载创造新的运算符C.C+中所有运算符都可以作为非成员函数重载D.重载运算符时可以改变其结合性15.下列有关模板的叙述中,正确的是(分数:2.00)A.函数模板不能含有常规形参B.函数模
5、板的一个实例就是一个函数定义C.类模板的成员函数不能是模板函数D.用类模板定义对象时,绝对不能省略模板实参16.下列有关 C+流的叙述中,错误的是(分数:2.00)A.C+操作符 setw设置的输出宽度永久有效B.C+操作符 endl可以实现输出的回车换行C.处理文件 I/O时,要包含头文件 fstreamD.进行输入操作时,eof()函数用于检测是否到达文件尾17.下列符号中能够作为 C+标识符的是(分数:2.00)A.constB.2aC.-shapeD.-count18.已知枚举类型声明语句为: enum COLORWHITE,YELLOW,GREEN5,RED,BLACK10; 则下列
6、说法中错误的是(分数:2.00)A.枚举常量 YELLOW的值为 1B.枚举常量 RED的值为 6C.枚举常量 BLACK的值为 10D.枚举常量 WHITE的值为 119.执行下列语句段后,输出字符“*”的个数是 for(int i50;i1;i2)count*;(分数:2.00)A.24B.25C.26D.5020.有如下定义: int a51,3,5,7,9, * p=a; 下列表达式中不能得到数值 5的是(分数:2.00)A.a2B.a3C.*(p+2)D.*p+421.已知函数 f的原形是 void f(int * a,long ,变量 v1、v2 的定义是: int v1;long
7、 v2; 下列调用语句中正确的是(分数:2.00)A.f(v1, ; 则类 MyClass的构造函数的个数是(分数:2.00)A.1个B.2个C.3个D.4个28.有如下类和对象的定义: class Constants public: static double get PI()return 3.1416; ;Constants constants; 下列各组语句中,能输出 3.1416的是(分数:2.00)A.coutconstants-getPI();和 coutConstants:getPI();B.coutconstant getPI();和 coutConstantgetPI();C
8、.coutconstants-getPI();和 coutConstants-getPl();D.coutconstant getPI();和 coutConstants:getPI();29.有如下程序: #includciostream using namespace std; class VAC public: int f()constreturn 3; int f()return 5; ; int main() VAC v1; const VAC v2; coutv1f()v2f(); return 0; 运行时的输出结果是(分数:2.00)A.53B.35C.55D.3330.有如下
9、类的声明: class Base protected: int amount; public: Base(int n0):amount(n) int getAmount()constreturn amount; ; class Derived:public Base protected: int value public: Derived(int m,int n):value(m),Base(n) int getData()constreturn value+amount; ;已知 x是一个 Derived对象,则下列表达式中正确的是(分数:2.00)A.value+ getAmount()B
10、.getData()- getAmount()C.getData()- amountD.value+ amount31.有如下程序: #includeiostream using namespace std; class Base int x; public: Base(int n0):x(n)coutn;) int getX()constreturn x; ; class Derived:public Base int y; public: Derived(int m,int n):y(m,)Base(n)coutm; Derived(int m):y(m)coutm; ; int main
11、() Derived d1(3),d2(5,7) return 0; 运行时的输出结果是(分数:2.00)A.375B.357C.0375D.035732.下列有关抽象类和纯虚函数的叙述中,错误的是(分数:2.00)A.拥有纯虚函数的类是抽象类,不能用来定义对象B.抽象类的派生类若不实现纯虚函数,它也是抽象类C.纯虚函数的声明以“0;”结束D.纯虚函数都不能有函数体33.有如下程序: #includeiostream using namespace std; class Amount int amount; public: Amount(int n=0):amount(n) int getAm
12、ount()constreturn amount; Amount int main() Amount x(3),y(7); x+y, coutx. getAmount()endl; return 0; 已知程序的运行结果是 10,则下划线处缺失的表达式是(分数:2.00)A.* thisB.thisC. class GA public: virtual int f( ) return 1; ; class GB:public GA public: virtual int f() return 2; ; void show(GA g)coutg.f(); void display(GA int
13、main() GA a;show(A) ;display(A) ; GB b;show(B) ;display(B) ; return 0; 运行时的输出结果是(分数:2.00)A.1111B.1211C.1112D.1212二、B填空题/B(总题数:15,分数:30.00)36.测试用例包括输入值集和U 【1】 /U值集。(分数:2.00)填空项 1:_37.深度为 5的满二叉树有U 【2】 /U个叶子结点。(分数:2.00)填空项 1:_38.设某循环队列的容量为 50,头指针 front5(指向队头元素的前一位置),尾指针 rear =29(指向队尾元素),则该循环队列中共有U 【3】
14、/U个元素。(分数:2.00)填空项 1:_39.在关系数据库中,用来表示实体之间联系的是U 【4】 /U。(分数:2.00)填空项 1:_40.在数据库管理系统提供的数据定义语言、数据操纵语言和数据控制语言中,U 【5】 /U负责数据的模式定义与数据的物理存取构建。(分数:2.00)填空项 1:_41.在面向对象的程序设计中,将数据和处理数据的操作封装成一个整体就定义了一种事物的类型,称作“类”。类是一种抽象的概念,属于该类的一个实例叫做“U 【6】 /U”。(分数:2.00)填空项 1:_42.指针数组是由U 【7】 /U构成的数组。(分数:2.00)填空项 1:_43.如果使用数组名作为
15、函数参数,形实结合时,传递的是U 【8】 /U。(分数:2.00)填空项 1:_44.在类的对象被创建的时候,U 【9】 /U函数会被自动调用。(分数:2.00)填空项 1:_45.在类中,U 【10】 /U成员为类的所有对象所共享。(分数:2.00)填空项 1:_46.有如下程序: #includeiostream using namespace std; class Base public: int m,n; ; class Derived1:U 【11】 /UBase; class Derived2:public Derived1 public: void SetMN(int M,int
16、 N)m=M;n=N; int GetSumMN()return(m+n); ; int main() Derived2 objD; ohjD. SetMN(3,4); cout“M+N=“objD, m+objD, nendl; return 0 编译时只有“cout“M+N“objDmobjDnendl;”有语法错误,程序的其他地方没有语法错误。请判断下划线处使用的关键字是什么。(分数:2.00)填空项 1:_47.有如下程序: #includeiostream using namespace std class Base int b; public: Base(int i) b=i; V
17、oid disp ( ) cout“Base:b=“b; ; class Base1:virtual public Base public: Base1(int i):Base(i) ; class Base2:virtual public Base public: Base2(int i):Base(i) ; class Derived:public Base2. public Base1 int d; public: Derived(int i ,int j):Base1(j),Base2(j),U 【12】 /U d=i; void disp() cout“Derived:d=“d ;
18、; int main() Derived objD(1,2);objD. disp() objD. Base:disp(); objD. Base1:disp() objD. Base2:disp(); return 0; 请将程序补充完整,使程序在运行时输出: Derivd:d=1 Base:b2 Base:b=2 Base:b=2(分数:2.00)填空项 1:_48.如下程序声明了一个电话号码类 PhoneNumber,重载了流插入运算符,以便于电话号码的输出。请将程序补充完整。 # includeiostream # includeiomanip # includestring usin
19、g namespace std; class PhoneNumber public: void setNumber(string number) this-number = number; /重载流插入操作符 friendU 【13】 /U(ostream return output; private: string number; ; int main() PhoneNumber phone; phone. setNumber(“8008100598“); cout“The phone number is:“phoneendl; return 0; (分数:2.00)填空项 1:_49.如下
20、程序声明了一个二维图形类 TwoDShape,从其派生出矩形类 Rec。 #includeiostream #includestring using namespaee std, class TwoDShape/ 二维图形类 char name20; public: TwoDShape (char * n=“unknown“) strcpy(name, n); Char * getName()return name; U 【14】 /U=0; ; class Rec: public TwoDShape double width, height public: Rec(double w-=0.
21、0,double h=0. 0):TwoDShape(“rectangle“) width=w; height=h; double getWidth() return width; double getHeight() return height; double area() return width * height; ; int main() TwoDShape * shape; Shape=new Rec(2.1,3.0); cout“object is“shape-getName()“/n“; cout“Area is“shape-area()“/n“; return 0 请将程序补充
22、完整,使程序在运行时输出: abject is triangle Area is 6.3(分数:2.00)填空项 1:_50.如下程序声明了一个使用两个通用数据类型的模板类 dataClass,其中构造函数用于初始化两个数据成员,成员函数 show用于输出两个数据成员的数值。 #includeiostream using namespace std; U 【15】 /U T1 i; T2 j; public: dataClass(T1 a, T2 b)i=a;j=b; void show()couti“,“j/n; ; int main() dataClassint. doubleob1(10
23、,0.23) dataCllasschar,char *ob2(X,“my data“); ob1show(); ob2show(); return 0; 请将程序补充完整,使程序在运行时输出: 10,0.23 X,my data(分数:2.00)填空项 1:_全国计算机等级考试二级 C+真题 2008年 4月答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.程序流程图中带有箭头的线段表示的是(分数:2.00)A.图元关系B.数据流C.控制流 D.调用关系解析:解析 详细设计阶段的主要描述工具分为图形、语言和表格描述工具。程序流程图是常用
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 全国 计算机等级考试 二级 2008 答案 解析 DOC
