【计算机类职业资格】二级C++笔试-378及答案解析.doc
《【计算机类职业资格】二级C++笔试-378及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试-378及答案解析.doc(22页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试-378 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.下列关于模板的叙述中,错误的是(分数:2.00)A.调用模板函数时,在一定条件下可以省略模板实参B.可以用 int、double 这样的类型修饰符来声明模板参数C.模板声明中的关键字 class都可以用关键字 typename替代D.模板的形参表中可以有多个参数2.当使用 ofstream流类定义一个流对象并打开一个磁盘文件时,文件的默认打开方式为(分数:2.00)A.ios base:inB.ios_base:binaryC.ios_base:inIios_base:
2、outD.ios_base:out3.在软件开发中,需求分析阶段可以使用的工具是(分数:2.00)A.N-S图B.DFD图C.PAD图D.程序流程图4.下列运算符函数中,肯定不属于类 Value的成员函数的是(分数:2.00)A.Value operator+(Value);B.Value operator-(Value,Value);C.Value operator*(int);D.Value operator/(Value);5.一个栈的初始状态为空。现将元素 1、2、3、4、5、A、B、C、D、E 依次入栈,然后再依次出栈,则元素出栈的顺序是(分数:2.00)A.123456ABCDEB
3、.EDCBA54321C.ABCDEl2345D.54321EDCBA6.若已经声明了函数原型“void fun(int a,double b=0.0);”,则下列重载函数声明中正确的是(分数:2.00)A.void fun(int a=90,double b=0.0);B.int fun(int a,doubleB) ;C.vD.bool fun(int a,double b=0.0);7.如果表达式 a=b 中的“=”是作为非成员函数重载的运算符,则可以等效地表示为(分数:2.00)A.operator=(B.C.D.operator=(b,8.数据流图中带有箭头的线段表示的是(分数:2.
4、00)A.控制流B.事件驱动C.模块调用D.数据流9.在一个抽象类中,一定包含(分数:2.00)A.虚函数B.纯虚函数C.模板函数D.重载函数10.有 3个关系 R、S 和 T如下: (分数:2.00)A.笛卡儿积B.交C.并D.自然连接11.下列选项中,与实现运行时多态性无关的是(分数:2.00)A.重载函数B.虚函数C.指针D.引用12.有如下程序: #includeiostreanl using namespace std; class MyClass public: MyClass(int x):val(x) void Set(int x)val=x; void Print( )eon
5、steout“val=“val/t; private: int val; ; int main( ) eonst MyClass objl(10); MyClass obj2(20); objl.Print(); /语句 1 obj2.Print( ); /语句 2 objl.Set(20); /语句 3 obj2.Set(30); /语句 4 return 0; 其主函数中错误的语句是(分数:2.00)A.语句 1B.语句 2C.语句 3D.语句 413.下列叙述中正确的是(分数:2.00)A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构B.在循环队列中,只需要队头指针就能反映队
6、列中元素的动态变化情况C.在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况D.循环队列中元素的个数是由队头指针和队尾指针共同决定的14.在数据管理技术发展的 3个阶段中,数据共享最好的是(分数:2.00)A.人工管理阶段B.文件系统阶段C.数据库系统阶段D.3个阶段相同15.在长度为 n的有序线性表中进行二分查找,最坏情况下需要比较的次数是(分数:2.00)A.0(n)B.O(n2)C.D(10g2n)D.O(nlog2n)16.下列模板声明中有语法错误的是(分数:2.00)A.templatetypename TT fun(T x)return x;B.templatetypen
7、ame TT fun(T x,int n)return x 术 n;C.templateclass TT fun(T*P)return*P;D.template17.下列关于运算符重载的叙述中,错误的是(分数:2.00)A.有的运算符可以作为非成员函数重载B.所有的运算符都可以通过重载而被赋予新的含义C.不得为重载的运算符函数的参数设置默认值D.有的运算符只能作为成员函数重载18.如下程序的输出结果是 #includeiostream using namespace std; class MyClass public: MyClass(int i=0)cout1; MyClass(const
8、MyClassx)cout2; ; int main( ) MyClass objl(1),obj2(2),ohj3(objl); return 0; (分数:2.00)A.112B.111C.121D.11319.在 C+中,编译系统自动为一个类生成默认构造函数的条件是(分数:2.00)A.该类没有定义任何有参构造函数B.该类没有定义任何无参构造函数C.该类没有定义任何构造函数D.该类没有定义任何成员函数20.要利用 C+流进行文件操作,必须在程序中包含的头文件是(分数:2.00)A.iostreamB.fstreamC.strstreamD.iomanip21.建立一个有成员对象的派生类对
9、象时,各构造函数体的执行次序为(分数:2.00)A.派生类、成员对象类、基类B.成员对象类、基类、派生类C.基类、成员对象类、派生类D.基类、派生类、成员对象类22.在一个派生类的成员函数中,试图调用其基类的成员函数“void f( );”,但无法通过编译,这说明(分数:2.00)A.f( )是基类的私有成员B.f( )是基类的保护成员C.派生类的继承方式为私有D.派生类的继承方式为保护23.下列语句中正确的是(分数:2.00)A.char*myString=“Hello-World!“;B.char myString=“Hello-World!“;C.char myString11=”Hel
10、lo-World!”;D.char nlyString12=“Hello-World!“;24.下列叙述中正确的是(分数:2.00)A.顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的B.顺序存储结构只针对线性结构,链式存储结构只针对非线性结构C.顺序存储结构能存储有序表,链式存储结构不能存储有序表D.链式存储结构比顺序存储结构节省存储空间25.在下列原型所示的 C+函数中,按“传值”方式传递参数的是(分数:2.00)A.void f1(int x);B.void f2(int*x);C.void f3(const int*x);D.void f4(intx);26.执行如
11、下程序,输出星号(*)的个数为 #includeiostream using namespaee std; class Sample public: Sample( ) Sample( )cout*; ; int main( ) Sample temp2,*pTemp2; return 0; (分数:2.00)A.1B.2C.3D.427.对于通过公有继承定义的派生类,若其成员函数可以直接访问基类的某个成员,说明该基类成员的访问权限是(分数:2.00)A.公有或私有B.私有C.保护或私有D.公有或保护28.在类声明中,紧跟在“public:”后声明的成员的访问权限是(分数:2.00)A.私有B
12、.公有C.保护D.默认29.在语句“eoutA;”中,eout 是(分数:2.00)A.类名B.对象名C.函数名D.C+的关键字30.如下程序的输出结果是 #includeiostream using namespace std: int main( ) int sum: for(inti=O;i6;i+=3) sunl=i: for(intj=i;j6;j+)suitL+=j; coutsumendl: retuIn 0:(分数:2.00)A.3B.10C.12D.1531.在面向对象方法中,不属于“对象”基本特点的是(分数:2.00)A.一致性B.分类性C.多态性D.标识唯一性32.定义派
13、生类时,若不使用关键字显式地规定采用何种继承方式,则默认方式为(分数:2.00)A.私有继承B.非私有继承C.保护继承D.公有继承33.下列字符串中不能作为 C+标识符使用的是(分数:2.00)A.WHILEB.userC._lvarD.9stars34.一问宿舍可住多个学生,则实体宿舍和学生之间的联系是(分数:2.00)A.一对一B.一对多C.多对一D.多对多35.下列语句中错误的是(分数:2.00)A.const int a;B.const int a=10;C.const int*point=0;D.const int*point=new int(10);二、填空题(总题数:15,分数:
14、30.00)36.对下列二叉树进行中序遍历的结果是_。 (分数:2.00)填空项 1:_37.按照软件测试的一般步骤,集成测试应在 1 测试之后进行。(分数:2.00)填空项 1:_38.软件工程三要素包括方法、工具和过程,其中, 1 支持软件开发的各个环节的控制和管理。(分数:2.00)填空项 1:_39.数据库设计包括概念设计、 1 和物理设计。(分数:2.00)填空项 1:_40.在二维表中,元组的 1 不能再分成更小的数据项。(分数:2.00)填空项 1:_41.当使用关键字 1 作为函数返回类型时,该函数不返回任何值。(分数:2.00)填空项 1:_42.已知数组 a中有 n个元素,
15、下列语句将数组 a中从下标 x1开始的 k个元素移动到从下标 x2开始的 k个元素中,其中 0=x1x2n,x2+kn,请将下列语句补充完整。 for(inti=xl+k一 1;i=xl;i-)a_=ai;(分数:2.00)填空项 1:_43.如下程序的输出结果是_。 #includeiostream using namespace std; int funl(int x)return+x; int fun2(intx)return+x; int main( ) int x:1,y=2; Y=funl(fun2(x); coutx,y; return 0; (分数:2.00)填空项 1:_44
16、.如下程序的输出结果是_。 #includeiostream using namespace std; class pumpkin public: pumpkin( )+count; pumpkin( )-eount; static void total_count( )coutcount“pumpkin(s)“endl; private: static int count; ; int pumpkin:count=0; int main( ) pumpkin pl10; pumpkin:total_count( ); return 0; (分数:2.00)填空项 1:_45.有如下递归函数:
17、 int Fun(int n) if(n=1)return 1; _ 请补充完整,使得函数 Fun能够正确计算形参 n的阶乘。(分数:2.00)填空项 1:_46.请在下列程序中的空格处填写正确的语句: class Sample public: Sample( ) Sample( ) void SetData(int datA) /将 Sample类成员变量 data设置成形参的值 _ private: int data; ;(分数:2.00)填空项 1:_47.有如下类定义,请将 Sample类的复制构造函数补充完整。 class Sample public: Sample( ) Sampl
18、e( )if(P)delete P;) Sample(const Sample&s)_ void SetData(int datA) P=new int(datA) ; private: int*P: ;(分数:2.00)填空项 1:_48.重载加法运算符“+”,其函数名是 1。(分数:2.00)填空项 1:_49.如下程序的输出结果是_。 #includeiostream using namespace std; class Wages /“工资”类 double base; /基本工资 double bonus; /奖金 double tax; /税金 public: Wages(doub
19、le CBase,double CBonus,doable CTax): base(CBase),bonus(CBonus),tax(CTax) double getPay( )const; /返回应付工资额 Wages operator+(Wages w)cons; /重载加法 ; double Wages:getPay( )consreturn base+bonus-tax; Wages Wages:operator+(Wages w)constreturn Wages(base+wbase,bonus+wbonus,tax+wtax); int main( ) Wages wl(2000
20、,500,100),w2(5000,1000,300); eout(wl+w2)getPay( )endl; return 0; (分数:2.00)填空项 1:_50.如下程序的输出结果是_。 #includeiostream using namespace std; class Pet char name10; public: Pet(char*nanle)strcpy(this-name,name); const char*getName( )constreturn name; virtual void call( )eonst=0; ; class Dog:public Pet publ
21、ic: Dog(char*name):Pet(name) void call( )eonstcout“汪汪叫“; ; class Cat:public Pet public: Cat(char*name):Pet(name) void call( )consteout“喵喵叫“; ; int main( ) Pet*petl=new Dog(“哈克“),*pet2=new Cat(“吉米“); eoutpetl-getName( );petl-call( );eoutendl; coutpet2-getName( );pet2-call( );eoutendl; return 0; (分数:2
22、.00)填空项 1:_二级 C+笔试-378 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.下列关于模板的叙述中,错误的是(分数:2.00)A.调用模板函数时,在一定条件下可以省略模板实参B.可以用 int、double 这样的类型修饰符来声明模板参数C.模板声明中的关键字 class都可以用关键字 typename替代 D.模板的形参表中可以有多个参数解析:解析 在有 typename的地方可以用 class来代替,但是在有 class的地方不一定能用 typename代替,如: Templaeclass 类型参数class 类名 后面的
23、那个 class是不能用 typename代替的。2.当使用 ofstream流类定义一个流对象并打开一个磁盘文件时,文件的默认打开方式为(分数:2.00)A.ios base:inB.ios_base:binaryC.ios_base:inIios_base:outD.ios_base:out 解析:解析 对所有的类 ifstream,文件的打开方式默认值为:ios:in;而对于类 ofstream,文件打开方式的默认值为 ios:out。3.在软件开发中,需求分析阶段可以使用的工具是(分数:2.00)A.N-S图B.DFD图 C.PAD图D.程序流程图解析:解析 数据流图简称 DFD,它采
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 378 答案 解析 DOC
