【计算机类职业资格】全国计算机等级考试二级C++真题2010年3月及答案解析.doc
《【计算机类职业资格】全国计算机等级考试二级C++真题2010年3月及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】全国计算机等级考试二级C++真题2010年3月及答案解析.doc(13页珍藏版)》请在麦多课文档分享上搜索。
1、全国计算机等级考试二级 C+真题 2010年 3月及答案解析(总分:100.00,做题时间:120 分钟)一、选择题(每小题 2分,共 70分)(总题数:35,分数:70.00)1.下列叙述中正确的是 (分数:2.00)A.对长度为 n的有序链表进行查找,最坏情况下需要的比较次数为 nB.对长度为 n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)C.对长度为 n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)D.对长度为 n的有序链表进行对分查找,最坏情况下需要的比较次数为(n log2n)2.算法的时间复杂度是指 (分数:2.00)A.算法的执行时间B.算法所处
2、理的数据量C.算法程序中的语句或指令条数D.算法在执行过程中所需要的基本运算次数3.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于系统软件的是 (分数:2.00)A.编辑软件B.操作系统C.教务管理系统D.浏览器4.软件(程序)调试的任务是 (分数:2.00)A.诊断和改正程序中的错误B.尽可能多地发现程序中的错误C.发现并改正程序中的所有错误D.确定程序中错误的性质5.数据流程图(DFD 图)是 (分数:2.00)A.软件概要设计的工具B.软件详细设计的工具C.结构化方法的需求分析工具D.面向对象方法的需求分析工具6.软件生命周期可分为定义阶段,开发阶段和维护阶段。
3、详细设计属于 (分数:2.00)A.定义阶段B.开发阶段C.维护阶段D.上述三个阶段7.数据库管理系统中负责数据模式定义的语言是 (分数:2.00)A.数据定义语言B.数据管理语言C.数据操纵语言D.数据控制语言8.在学生管理的关系数据库中,存取一个学生信息的数据单位是 (分数:2.00)A.文件B.数据库C.字段D.记录9.数据库设计中,用 E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的 (分数:2.00)A.需求分析阶段B.逻辑设计阶段C.概念设计阶段D.物理设计阶段10.有两个关系 R和 T如下: (分数:2.00)A.选择B.投影C.交D.并11.下列关于函数的
4、描述中,错误的是 (分数:2.00)A.函数可以没有返回值B.函数可以没有参数C.函数可以是一个类的成员D.函数不能被定义为模板12.若 MyClass是一个类名,且有如下语句序列 MyClass c1,*c2; MyClass *c3=new MyClass; MyClass 上面的语句序列所定义的类对象的个数是 (分数:2.00)A.1B.2C.3D.413.下列关于继承方式的描述中,错误的是 (分数:2.00)A.如果不显式地指定继承方式,缺省的继承方式是私有(private)B.采用公有继承方式时,基类中的公有成员在派生类中仍然是公有成员C.采用保护继承方式时,基类中的保护成员在派生类
5、中仍然是保护成员D.采用私有继承方式时,基类中的私有成员在派生类中仍然是私有成员14.将前缀运算符“-”重载为非成员函数,下列原型中,能正确用于类中说明的是 (分数:2.00)A.DecrB.Decr operator -( DecrC.friend DecrD.frlend Decr operator -(Decr15.若 MyTemp是一个只有一个虚拟类型参数的类模板,且有如下语句序列 MyTempp2; MyTempp32; 编译系统在处理上面的语句序列时,所生成的模板 MyTemp的实例的个数是 (分数:2.00)A.1B.2C.3D.016.在 C+中,cin 是个 (分数:2.00
6、)A.类B.对象C.模板D.函数17.在下列字符中,不允许作为 C+标识符的是 (分数:2.00)A.bB.BC._D.218.下列叙述中,错误的是 (分数:2.00)A.false是一个逻辑型常量B.“b“是一个字符型常量C.365是一个 int常量D.3.1415926是一个 double常量19.若 x和 y是程序中的两个整型变量,则下列 if语句中正确的是 (分数:2.00)A.if(x=0) y=1; else y=2;B.if(x=0) then y=1 else y=2;C.if(x=0) y=1 else y=2;D.if x=0 y=1; else y=2;20.要定义整型数
7、组 x,使之包括初值为 O的三个元素,下列语句中错误的是 (分数:2.00)A.int x3=0,0,0;B.int x=0;C.static int x3=0;D.int x=0,0,0;21.关于函数中的,下列表述中错误的是 (分数:2.00)A.中有可能包含关键字 intB.中有可能包含自定义标识符C.中有可能包含字符*D.中可能包含22.要定义一个引用变量 p,使之引用类 MyClass的一个对象,正确的定义语句是 (分数:2.00)A.MyClass p=MyClass;B.MyClass p=new MyClass;C.MyClass D.MyClass a,23.有如下两个类定义
8、 class XX private: double x1; protected: double x2; public: double x3; ; class YY:protected XX private: double y1; protected: double y2; public: double y3; ; 在类 YY中保护成员变量的个数是 (分数:2.00)A.1B.2C.3D.424.下列关于运算符重载的描述中,错误的是 (分数:2.00)A.可以通过运算符重载在 C+中创建新的运算符B.赋值运算符只能重载为成员函数C.运算符函数重载为类的成员函数时,第一操作数是该类对象D.重载类型
9、转换运算符时不需要声明返回类型25.下列关于类模板的描述中,错误的是 (分数:2.00)A.类模板的成员函数都是模板函数B.可以为类模板参数设置默认值C.类模板描述了一组类D.类模板中只允许有一个类型参数26.下列控制格式输入输出的操作符中,能够设置浮点数精度的是 (分数:2.00)A.setprecisionB.setwC.setfillD.showpoint27.下列程序段中包含 4个函数,其中具有隐含 this指针的是 int fun1(); class Test public: int fun2(); friend int fun3(); static int fun4(); ; (分
10、数:2.00)A.fun1B.fun2C.fun3D.fun428.有如下程序 #include using namespace std; class Test public: Test() Test(const Test ; int main() A a1; const A a2(4); a1.print(2); a1.print(); return 0; 运行时的输出结果是 (分数:2.00)A.P8-E4B.P8-C16-C.P0-E4-D.P0-C16-30.下列代码声明了 3个类 class Person; class Student:public Person; class Und
11、ergraduate:Student; 下列关于这些类之间关系的描述中,错误的是 (分数:2.00)A.类 Person是类 Undergraduate的基类B.类 Undergraduate从类 Student公有继承C.类 Student是类 Person的派生类D.类 Undergraduate是类 Person的派生类31.有如下程序 #include using namespace std; Class Base public: Base(int x=0):valB(x) cout Base() cout private: int valB; ; class Derived:publ
12、ic Base public: Derived(int x=0,int y=0):Base(x),valD(y)cout Derived() cout private: int valD; ; int main() Derived obj12(2,3); retuen 0; 运行时的输出结果是 (分数:2.00)A.2332B.2323C.3232D.322332.下面是类 Shape的定义: class Shape public: virtual void Draw()=0; ; 下列关于 Shape类的描述中,正确的是 (分数:2.00)A.类 Shape是虚基类B.类 Shape是抽象类
13、C.类 Shape中的 Draw函数声明有误D.语句“Shape s;”能够建立 Shape的一个对象 s33.将运算符“+”重载为非成员函数,下列原型声明中,错误的是 (分数:2.00)A.MyClock operator + (MyClock,long);B.MyClock operator + (MyClock,MyClock);C.MyClock operator + (long,long);D.MyClock operator + (long,MyClock);34.打开文件时可单独或组合使用下列文件打开模式 ios_base:app ios_base:binary ios_base
14、:in ios_base:out 若要以二进制读方式打开一个文件,需使用的文件打开模式为 (分数:2.00)A.B.C.D.35.有如下程序: #include using namespace std; Class B public: B(int xx):x(xx) +cout; x+=10; virtual void show() const cout protected: static int count; private: int x; ; class D:public B public: D(int xx,int yy):B(xx),y(yy) +count; y+=100; virt
15、ual void show() const cout private: int y; ; int B:count=0; int main() B *ptr=new D(10,20); ptr-show(); delete ptr; return 0; 运行时的输出结果是 (分数:2.00)A.1_120B.2_120C.1_20D.2_20二、填空题(每空 2分,共 30分)(总题数:15,分数:30.00)36.个队列的初始状态为空。现将元素 A,B,C,D,E,F,5,4,3,2,1依次入队,然后再依次退队,则元素退队的顺序为 【1】 。(分数:2.00)填空项 1:_37.设某循环队列的
16、容量为 50,如果头指针 front=45(指向队头元素的前一位置),尾指针 rear=10(指向队尾元素),则该循环队列中共有 【2】 个元素。(分数:2.00)填空项 1:_38.设二叉树如下: (分数:2.00)填空项 1:_39.软件是 【4】 、数据和文档的集合。(分数:2.00)填空项 1:_40.有一个学生选课的关系,其中学生的关系模式为:学生(学号,姓名,班级,年龄),课程的关系模式为:课程(课号,课程名,学时),其中两个关系模式的键分别是学号和课号,则关系模式选课可定义为:选课(学号, 【5】 ,成绩)。(分数:2.00)填空项 1:_41.若 x和 y是两个整形变量,在执行
17、了语句序列 x=5; y=6; y+=x-; 后,x+y 的值为 【6】 。 (分数:2.00)填空项 1:_42.在执行语句序列 int i=0; do i+; while(i*i填空项 1:_43.有如下的函数定义: int Xfun(int *a, int n) int x=*a; for(int *pa=a+1; pax) x=*pa; return x; 若执行了语句 int x5=23,46,78,55,16; 后,通过表达式 Xfun(x,5)调用该函数,则得到的返回值为 【8】 。 (分数:2.00)填空项 1:_44.有如下的函数定义: int Xfun(int x) int
18、 y=x; int x=10; y+=x; return x+y; 通过表达式 Xfun(5)调用该函数,则得到的返回值为 【9】 。 (分数:2.00)填空项 1:_45.假定 Xcs是一个类,该类中一个成员函数的原型为“Xcs *abc1;”,则在类外定义时对应的函数头为 【10】 。(分数:2.00)填空项 1:_46.请将下面的类 Date的定义补充完整,使得由语句 Date FirstDay; 定义的对象 FirstDay的值为 2010年 1月 1日。 class Date public: Date( 【11】 ):year(y),month(m),day(d) private:
19、int year,month,day; /依次表示年、月、日 ; (分数:2.00)填空项 1:_47.请将下面的程序补充完整,使得程序输出“飘是张娜的书”。 #include using namespace std; class Book public: Book(char *str) strcpy(title,str); 【12】 void PrintInfo1 cout protected: char title50; ; class MyBook:public Book public: MyBook(char *s1,char *s2=“张娜“): 【13】 strcpy(owner,
20、s2); virtual void PrintInfo2 cout private: char owner10; ; int main3 Book *prt=new MyBook(“飘“); prt-PrintInfo4; return 0; (分数:2.00)填空项 1:_填空项 1:_49.在有理数类 Rational中重载插入运算符 private: int a,q; ; (分数:2.00)填空项 1:_50.下面的函数定义是某函数模板能够生成的函数实例 int square(int n) return n*n; double square(double n) return n*n; 由
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 全国 计算机等级考试 二级 2010 答案 解析 DOC
