【计算机类职业资格】国家二级(C++)机试-试卷7-2及答案解析.doc
《【计算机类职业资格】国家二级(C++)机试-试卷7-2及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】国家二级(C++)机试-试卷7-2及答案解析.doc(15页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级(C+)机试-试卷 7-2 及答案解析(总分:86.00,做题时间:90 分钟)一、选择题(总题数:40,分数:80.00)1.数据流图中带有箭头的线段表示的是( )。(分数:2.00)A.控制流B.事件驱动C.模块调用D.数据流2.将前缀运算符“-“重载为非成员函数,下列原型中能正确用于类中说明的是( )。(分数:2.00)A.DecrB.Decroperator-(DecrC.friendDecrD.friendDecroperator-(Decr3.有如下程序: #include using namespace std; class Base public: Base(int x
2、=0) coutTabs(Tx);18.要定义整型数组 x,使之包括初值为 1 的三个元素,下列语句正确的是(分数:2.00)A.staticintx3=1;B.intx3;x1=x2=x3=1;C.intx3=1,1,1;D.intx=1,1,1;19.有如下类定义: class Base int l; public: int m; private: int n; ; class Derived: public Base;则类 Derived 所拥有的数据成员的个数是(分数:2.00)A.0B.1C.2D.320.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软
3、件的是( )。(分数:2.00)A.编译程序B.操作系统C.教务管理系统D.汇编程序21.有如下函数定义:void func(int a, int b+; 若执行代码段:int x = 0, y = 1;func(x, y);则变量 x 和 y 的值分别是( )。(分数:2.00)A.0 和 1B.1 和 1C.0 和 2D.1 和 222.下列有关模板的叙述中,正确的是( )。(分数:2.00)A.函数模板不能含有常规形参B.函数模板的一个实例就是一个函数定义C.类模板的成员函数不能是模板函数D.用类模板定义对象时,绝对不能省略模板实参23.有如下程序段: int i=1; while(1)
4、 i+; if(i = 100) break; if(i%2 = 0) cout Tabs(Tx);解析:解析:选项 B 中类型形参 T 前需要有关键字 class 或 typename 修饰;选项 C 中函数 ads 需要返回值;选项 D 中形参表不能为空;答案为 A。18.要定义整型数组 x,使之包括初值为 1 的三个元素,下列语句正确的是(分数:2.00)A.staticintx3=1;B.intx3;x1=x2=x3=1;C.intx3=1,1,1; D.intx=1,1,1;解析:解析:选项 A 中,数组 x 的后两个元素初值默认为 0;选项 B 中,数组下标从 0 开始,x0未赋初
5、值,x3访问越界;选项 D 中,x 是整型变量,不是整型数组,赋值语法错误;只有 C 正确,定义整型数组 x,并对三个元素赋初值为 1;答案为 C。19.有如下类定义: class Base int l; public: int m; private: int n; ; class Derived: public Base;则类 Derived 所拥有的数据成员的个数是(分数:2.00)A.0B.1C.2D.3 解析:解析:C+中派生类拥有基类的所有成员,所以 Derived 类中数据成员分别是:l、m、n,答案为D。20.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属
6、于应用软件的是( )。(分数:2.00)A.编译程序B.操作系统C.教务管理系统 D.汇编程序解析:解析:编译软件、操作系统、汇编程序都属于系统软件,只有 C)教务管理系统才是应用软件。21.有如下函数定义:void func(int a, int b+; 若执行代码段:int x = 0, y = 1;func(x, y);则变量 x 和 y 的值分别是( )。(分数:2.00)A.0 和 1B.1 和 1C.0 和 2 D.1 和 2解析:解析:函数参数的 3 种传递方式:将变量名作为形参和实参,即传值方式;传递变量指针;引用形参。本题中实参 x 为传值方式,所以 x 的值不会改变;y 为
7、引用形参,所以会改变。故本题答案为C。22.下列有关模板的叙述中,正确的是( )。(分数:2.00)A.函数模板不能含有常规形参B.函数模板的一个实例就是一个函数定义 C.类模板的成员函数不能是模板函数D.用类模板定义对象时,绝对不能省略模板实参解析:解析:本题考查函数模板和类模板的基础知识,所以本题答案为 B。23.有如下程序段: int i=1; while(1) i+; if(i = 100) break; if(i%2 = 0) cout *; 执行这个程序段输出字符 * 的个数是(分数:2.00)A.100B.48C.49 D.50解析:解析:本题中 while 循环中当 i 为偶数
8、时输出*,而 i 为 100 时跳出循环,所以输出 49 个*,答案为 C。24.已知 TV 是一个类,并有函数 func 定义如下: void func() TV li,*net2,company3; 则在调用func() 后,TV 类的析构函数被调用的次数是(分数:2.00)A.2 次B.3 次C.4 次 D.6 次解析:解析:本题考查默认析构函数,题中定义了对象、包含三个元素的一维对象数组,所以析构函数执行 4 次,而对象指针数组并没有实际占用空间,所以不执行析构函数。25.下面对对象概念描述正确的是(分数:2.00)A.对象间的通信靠消息传递 B.对象是名字和方法的封装体C.任何对象必
9、须有继承性D.对象的多态性是指一个对象有多个操作解析:解析:对象之间进行通信的构造叫做消息,A 正确。多态性是指同一个操作可以是不同对象的行为,D 错误。对象不一定必须有继承性,C 错误。封装性是指从外面看只能看到对象的外部特征,而不知道也无须知道数据的具体结构以及实现操作,B 错误。26.下列关于重载运算符的说法正确的是:(分数:2.00)A.运算符:不能被重载,运算符.必须作为类成员重载B.运算符不能被重载,运算符=必须作为类成员重载C.运算符*不能被重载,运算符()必须作为类成员重载D.运算符.不能被重载,运算符必须作为类成员重载 解析:解析:本题考查运算符重载,不能重载的运算符只有 5
10、 个:.、.*、:、sizeof、?:。C+规定有的运算符(如赋值运算符、下标运算符、函数调用运算符)必须定义为类的成员函数,只有 D 选项正确。27.下列关于模板的表述中,错误的是(分数:2.00)A.类模板的成员函数都是模板函数B.函数模板是一种参数化类型的函数C.满足一定条件时可以省略模板实参D.模板形参只能由关键字 typename 声明 解析:解析:模板形参由关键字 typename 或者 class 声明,所以 D 选项错误。28.已知有数组定义 char a34;下列表达式中正确的是(分数:2.00)A.a0=“AAA“B.strcpy(a1,“BBBBB“)C.a21=“CC“
11、D.a11=a11 解析:解析:程序定义一个 3 行 4 列的二维字符数组。由于是二维数组,所以 a0代表一维数组,数组是不能直接赋值的,A 错误;由于是二维数组,a1代表数组 a 的第二行行地址,可以使用 strcpy 函数赋值,但是 a1只有 4 个字节大小的空间,而字符串“BBBBB“占 6 个字节,拷贝越界,B 错误;同 B 情况一样,a21只有 1 个字节空间,“CC“占 3 个字节,无法完成赋值,C 错误;D 选项是对 a11完成自我赋值,正确;答案为 D。29.有如下类声明: class Fin public: Fin(); / Fin *pf; / Fin f; / Fin /
12、 ; 在标有数字的四个成员声明中,将产生编译错误的是(分数:2.00)A.B.C. D.解析:解析:只有当类定义体完成之后才能定义类,题目中四个声明语句位置,Fin 类未定义完整,属于不完全类型,此时数据成员只能是指向该类类型的指针或引用,而不能是该类的对象;语句 3 会产生编译错误;答案为 C。30.有如下程序段: int i=100; while ( int i=10 ) cout*; i-; 运行时输出“*“的个数是(分数:2.00)A.0B.100C.10D.无穷 解析:解析:首先,程序定义了局部变量 i 并初始化为 100,在 while 循环中定义了同名局部变量 i 并初始化为 1
13、0,由变量的作用域可知 while 循环中的 i 屏蔽了 while 语句前的局部变量 i,所以 while 循环体中的 i 初值为 10;其次,由于 while 循环的循环条件为 inti=10,每次循环都是重新定义并初始化 i,条件始终为真,所以 while 循环将会无限执行下去,输出无穷个“*“。答案为 D。31.除了显式定义的构造函数外,类中还有可能包含编译器自动生成的构造函数,因此一个类所拥有的构造函数的至少有(分数:2.00)A.1 个 B.2 个C.3 个D.4 个解析:解析:一个类,如果没有显示定义的构造函数,那么编译器自动生成一个构造函数;一个类,如果显示定义了构造函数,无论
14、个数多少,编译器也不会再生成任何构造函数,所以一个类所拥有的构造函数至少有 1 个,答案为 A。32.在软件开发中,需求分析阶段产生的主要文档是( )。(分数:2.00)A.可行性分析报告B.软件需求规格说明书 C.概要设计说明书D.集成测试计划解析:解析:A)错误,可行性分析阶段产生可行性分析报告。C)错误,概要设计说明书是总体设计阶段产生的文档。D)错误,集成测试计划是在概要设计阶段编写的文档。B)正确,需求规格说明书是后续工作如设计、编码等需要的重要参考文档。33.有如下程序: #include using namespace std; int main() void function(
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 国家 二级 试试 72 答案 解析 DOC
