【计算机类职业资格】二级C++笔试321及答案解析.doc
《【计算机类职业资格】二级C++笔试321及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试321及答案解析.doc(12页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试 321 及答案解析(总分:98.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.下面程序的输出结果是 #includeiostream.h class example int a; public: example(int b) ab; void pnnt( ) aa1;cout a “ “; void print( ) constcout a “ “; ; void main( ) example x(3) ; const example y(2) ; x.print( ) ; y.print( ) ; ) 2 2 ) 4 3 ) 4 2 )
2、3 2(分数:2.00)A.B.C.D.2.下列说法正确的是(分数:2.00)A.内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方B.内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方C.类的内联函数必须在类体内定义D.类的内联函数必须在类体外通过加关键字 inline 定义3.下列哪个是 C语言的有效标识符?(分数:2.00)A._No1B.N1C.12345D.int4.下列程序的运行结果是 #includeiostream.h class A int a; public: A( ) a0; A(int aa) aaa; cout a; ; void main( )
3、A x,y(2) ,z(3) ; cout endl; ) 00 ) 23 ) 34 ) 25(分数:2.00)A.B.C.D.5.下列运算符中,在 C语言中不能重载的是(分数:2.00)A.*B.C.: :D./6.下列程序的运行结果为 #includeiostream. h void print(double a) cout a; void print(int a, int b) cout b a; void main( ) print(1.2) ; tout “ “; print(3,4) ; ) 1.2 34 ) 2.2 34 ) 1.2 43 ) 2.2 43(分数:2.00)A.B
4、.C.D.7.下列程序的执行结果为 #includeiostream.h void main( ) int a3,b0; int * p ba; cout * p “,“ b endl; (分数:2.00)A.3,4B.4,3C.3,4D.4,48.下列关于多态性的描述,错误的是(分数:2.00)A.C语言中的多态性分为编译时的多态性和运行时的多态性B.编译时的多态性可通过函数重载实现C.运行时的多态性可通过模板和虚函数实现D.实现运行时多态性的机制称为动态绑定9.C语言对 C 语言做了很多改进,C语言相对于 C 语言的最根本的变化是(分数:2.00)A.增加了一些新的运算符B.允许函数重载,
5、并允许设置默认参数C.规定函数说明符必须用原型D.引进了类和对象的概念10.下面程序的运行结果为 #includeiostream. h class A public: A( ) cout “1“; A( ) cout “2“; ; class B:public A public: B( ) cout “3“; B( ) cout “4“; ;void main( ) B b; ) 1234 ) 1324 ) 1342 ) 3142(分数:2.00)A.B.C.D.11.下列选项,不正确的是 ) for(inta1;a10;a) ; ) int a1; do a; while(a10) ; )
6、 int a1; while(a10) a; ) for(int a1;a10;a) a;(分数:2.00)A.B.C.D.12.下面对于友元函数描述正确的是(分数:2.00)A.友元函数的实现必须在类的内部定义B.友元函数是类的成员函数C.友元函数破坏了类的封装性和隐藏性D.友元函数不能访问类的私有成员13.当使用 fstream 流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为(分数:2.00)A.ios: :inB.ios: :outC.ios: :in | ios: :outD.以上都不对14.下列有关数据库的描述,正确的是(分数:2.00)A.数据处理是将信息转化为数据的
7、过程B.数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变C.关系中的每一列称为元组,一个元组就是一个字段D.如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键则称其为本关系的外关键字15.下面关于数组的初始化正确的是(分数:2.00)A.char str a,b,cB.char str2 a,b,cC.char str2 3 a,b,c,d,e,fD.char str( ) a,b,c16.算法的时间复杂度是指(分数:2.00)A.执行算法程序所需要的时间B.算法程序的长度C.算法执行过程中所需要的基本运算次数D.算法程序中的指令条数17.已知二叉树后序遍历序
8、列是 dabec,中序遍历序列是 debac,它的前序遍历序列是(分数:2.00)A.acbedB.decabC.deabcD.cedba18.数据库管理系统 DBMS 中用来定义模式、内模式和外模式的语言为(分数:2.00)A.CB.BasicC.DDLD.DML19.为了提高测试的效率,应该(分数:2.00)A.随机选取测试数据B.取一切可能的输入数据作为测试数据C.在完成编码以后制定软件的测试计划D.集中对付那些错误群集的程序20.下列关于虚基类的描述,错误的是(分数:2.00)A.设置虚基类的目的是为了消除二义性B.虚基类的构造函数在非虚基类之后调用C.若同一层中包含多个虚基类,这些虚
9、基类的构造函数按它们说明的次序调用D.若虚基类由非虚基类派生而来,则仍然先调用基类构造函数,再调用派生类的构造函数21.链表不具有的特点是(分数:2.00)A.不必事先估计存储空间B.可随机访问任一元素C.插入删除不需要移动元素D.所需空间与线性表长度成正比22.结构化程序设计的 3 种结构是(分数:2.00)A.顺序结构、选择结构、转移结构B.分支结构、等价结构、循环结构C.多分支结构、赋值结构、等价结构D.顺序结构、选择结构、循环结构23.下面对静态数据成员的描述中,正确的是(分数:2.00)A.静态数据成员可以在类体内进行初始化B.静态数据成员不可以被类的对象调用C.静态数据成员不能受
10、private 控制符的作用D.静态数据成员可以直接用类名调用24.栈和队列的共同特点是(分数:2.00)A.都是先进先出B.都是先进后出C.只允许在端点处插入和删除元素D.没有共同点25.决定 C语言中函数的返回值类型的是(分数:2.00)A.return 语句中的表达式类型B.调用该函数时系统随机产生的类型C.调用该函数时的主调用函数类型D.在定义该函数时所指定的数据类型26.下列程序的输出结果为 #includeiostream.h void main( ) char * a “hello,“the“,“ world“; char * * paa; pa; cout * pa endl;
11、 ) hello ) the ) world ) hellotheworld(分数:2.00)A.B.C.D.27.设有定义 int x; float y; , 则 10xy 值的数据类型是(分数:2.00)A.intB.doubleC.floatD.不确定28.对类成员访问权限的控制,是通过设置成员的访问控制属性实现的,下列不是访问控制属性的是(分数:2.00)A.公有类型B.私有类型C.保护类型D.友元类型29.类的析构函数的作用是(分数:2.00)A.一般成员函数的初始化B.类的初始化C.对象的初始化D.删除类创建的对象30.软件生命周期中所花费用最多的阶段是(分数:2.00)A.详细设
12、计B.软件编码C.软件测试D.软件维护31.下面程序的运行结果为 #includeiostream.h void main( ) for(int a 0,x0;!xa) a; cout a endl; ) 10 ) 11 ) 12 ) 0(分数:2.00)A.B.C.D.32.下列有关数据库的描述,正确的是(分数:2.00)A.数据库是一个 DBF 文件B.数据库是一个关系C.数据库是一个结构化的数据集合D.数据库是一组文件33.下列程序的输出结果是 #includeiostream. h int min(int a, int b) if(ab) retum a; else return b;
13、 return 0; void main( ) cout min(1,min(2,3) ) endl; ) 0 ) 1 ) 2 ) 3(分数:2.00)A.B.C.D.34.在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函数是(分数:2.00)A.友元函数B.虚函数C.构造函数D.析构函数35.在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是(分数:2.00)A.派生类的对象可以赋给基类的对象B.派生类的对象可以初始化基类的引用C.派生类的对象可以直接访问基类中的成员D.派生类的对象的地址可以赋给指向基类的指针二、B填空题/B(总题数
14、:14,分数:28.00)36.算法的基本特征是可行性、确定性、U /U和拥有足够的情报。(分数:2.00)填空项 1:_37.在长度为 n 的有序线性表中进行二分查找。最坏的情况下,需要的比较次数为U /U。(分数:2.00)填空项 1:_38.在面向对象的程序设计中,类描述的是具有相似性质的一组U /U。(分数:2.00)填空项 1:_39.通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为U /U。(分数:2.00)填空项 1:_40.数据库管理系统常见的数据模型有层次模型、网状模型和U /U3 种。(分数:2.00)填空项 1:_41.在 C语言的结构化程序设计中,U 6
15、/U是程序的基本组成单元;在 C语言的面向对象设计框架中,U 7 /U是程序的基本组成单元。(分数:2.00)填空项 1:_42.假设 int a1,b2;,则表达式(a/b) * b-的值为U /U。(分数:2.00)填空项 1:_43.C语言提供的基本控制结构可以分为 3 种类型:顺序结构、U /U和循环结构。(分数:2.00)填空项 1:_44.C语句 const char * const p“hello“;,所定义的指针 p 和它所指的内容都不能被U /U。(分数:2.00)填空项 1:_45.C语言的参数传递机制包括传值和传地址两种,如果调用函数时,需要改变实参或者返回多个值,应该采
16、取U /U方式。(分数:2.00)填空项 1:_46.对于下面定义的类 MyClass,请在函数 f( )中添加对象成员把 n 的值修改为 50。 class MyClass public: MyClass(intx) nx; void SetNum(int nl) nnl; private: int n; ; int f( ) MyClass * ptrnew MyClass(45) ; U /U (分数:2.00)填空项 1:_47.继承的方式有公有继承、私有继承和U /U3 种。(分数:2.00)填空项 1:_48.表达式 operator(x, y) 还可以表示为U /U。(分数:2.
17、00)填空项 1:_49.类模板的使用实际上是将类模板实例化成一个具体的U /U。(分数:2.00)填空项 1:_二级 C+笔试 321 答案解析(总分:98.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.下面程序的输出结果是 #includeiostream.h class example int a; public: example(int b) ab; void pnnt( ) aa1;cout a “ “; void print( ) constcout a “ “; ; void main( ) example x(3) ; const examp
18、le y(2) ; x.print( ) ; y.print( ) ; ) 2 2 ) 4 3 ) 4 2 ) 3 2(分数:2.00)A.B.C. D.解析:解析 “”是右结合的,所以先赋值为 3,最后输出 31;常成员函数只有常对象才能调用,所以输出 2。2.下列说法正确的是(分数:2.00)A.内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方B.内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方 C.类的内联函数必须在类体内定义D.类的内联函数必须在类体外通过加关键字 inline 定义解析:解析 本题考查的是内联函数的定义,引入内联函数是为了解决程序中函数调用的效
19、率问题,是以目标代码的增加为代价换取时间的节省;一般函数在运行时被调用,而调用的内联函数在编译时就被替代了,如果不加 inline 关键字,则编译器会将在类说明部分定义的任何函数都被认定为内联函数。3.下列哪个是 C语言的有效标识符?(分数:2.00)A._No1 B.N1C.12345D.int解析:解析 标识符是一个以字母或下画线开始的,由字母、下画线和数字组成的字符串,标识符不能与任意关键字同名。4.下列程序的运行结果是 #includeiostream.h class A int a; public: A( ) a0; A(int aa) aaa; cout a; ; void mai
20、n( ) A x,y(2) ,z(3) ; cout endl; ) 00 ) 23 ) 34 ) 25(分数:2.00)A.B. C.D.解析:解析 本题考查的是对构造函数的掌握,另外“”运算符是右结合的,所以在进行输出的时候都是先把原来的输出后再自加 1。5.下列运算符中,在 C语言中不能重载的是(分数:2.00)A.*B.C.: : D./解析:解析 不能被重载的运算符还包括:“.”、“. *”、“ *”和“? :”。6.下列程序的运行结果为 #includeiostream. h void print(double a) cout a; void print(int a, int b)
21、 cout b a; void main( ) print(1.2) ; tout “ “; print(3,4) ; ) 1.2 34 ) 2.2 34 ) 1.2 43 ) 2.2 43(分数:2.00)A.B.C.D. 解析:解析 本题考查的是对重载函数的掌握,因为a 是右结合的,所以 a 先自加 1 再输出,即为2.2,之后调用函数 print(int a, int b) 输出 b 和 a,即 43。7.下列程序的执行结果为 #includeiostream.h void main( ) int a3,b0; int * p ba; cout * p “,“ b endl; (分数:2
22、.00)A.3,4B.4,3 C.3,4D.4,4解析:解析 * p 为所指对象 a 的值,语句“ba;”等价于“bba; aa1;”。8.下列关于多态性的描述,错误的是(分数:2.00)A.C语言中的多态性分为编译时的多态性和运行时的多态性B.编译时的多态性可通过函数重载实现C.运行时的多态性可通过模板和虚函数实现 D.实现运行时多态性的机制称为动态绑定解析:解析 编译时的多态性是通过函数重载和模板体实现的,运行时的多态性是通过虚函数体实现的。9.C语言对 C 语言做了很多改进,C语言相对于 C 语言的最根本的变化是(分数:2.00)A.增加了一些新的运算符B.允许函数重载,并允许设置默认参
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 321 答案 解析 DOC
