[计算机类试卷]国家二级(C++)机试模拟试卷105及答案与解析.doc

上传人:brainfellow396 文档编号:502373 上传时间:2018-11-29 格式:DOC 页数:29 大小:79KB
下载 相关 举报
[计算机类试卷]国家二级(C++)机试模拟试卷105及答案与解析.doc_第1页
第1页 / 共29页
[计算机类试卷]国家二级(C++)机试模拟试卷105及答案与解析.doc_第2页
第2页 / 共29页
[计算机类试卷]国家二级(C++)机试模拟试卷105及答案与解析.doc_第3页
第3页 / 共29页
[计算机类试卷]国家二级(C++)机试模拟试卷105及答案与解析.doc_第4页
第4页 / 共29页
[计算机类试卷]国家二级(C++)机试模拟试卷105及答案与解析.doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

1、国家二级( C+)机试模拟试卷 105及答案与解析 一、选择题 1 有如下程序: #include using namespace std; class Base1 public: Base1(int d) cout using namespace std; int main() int f,f1=1,f2=1; for(int i=0;i using namespace std; class AA public: AA() cout using namespace std; class A public: A() cout using namespace std; class Instrum

2、ent public: virtual void Display()=0; ; class Piano : public Instrument public: void Display() /*函数体略 */ ; int main() Instrument s; Instrument *p=0; / ; return 0; 下列叙述中正确的是 ( )。 ( A)语句 “Insturment*p=0;“编译时出错 ( B)语句 “Instruments;“编译时出错 ( C)类 Piano中的 Display函数不是虚函数 ( D)类 Instrument是一个虚基类 21 下列各组类型声明符中

3、,含义相同的一组是 ( )。 ( A) unsignedlongint 和 long ( B) signedshortint和 short ( C) unsignedshort和 short ( D) shortint和 int 22 在下列关键字中,不能用来表示继承方式的是 ( )。 ( A) private ( B) static ( C) public ( D) protected 23 在下列模式中,能够给出数据库物理存储结构与物理存取方法的是 ( )。 ( A)外模式 ( B)内模式 ( C)概念模式 ( D)逻辑模式 24 关于函数声明格式中的 ,下列叙述错误的是 ( A) 有可能

4、包含关键字 true ( B) 有可能包含自定义标识符 ( C) 有可能包含字符 * ( D) 有可能包含关键字 float 25 有如下程序: #include #include using namespace std; class Appliance public: Appliance(string t=“A“):type(t) Appliance() cout using namespace std; class AA char c; public: AA(char ch):c(ch) AA() cout) 或 格式 2: if() else 关于上面的语法格式,下列表述中错误的是 (

5、)。 ( A) 部分可以是一个 if语句,例如 if(if(a=0) ( B) 部分可以是一个 if语句,例如 if()if() ( C)如果在 前加上逻辑非运算符 !并交换 和 的位置,语句功能不 变 ( D) 部分可以是一个循环语句,例如 if()while() 34 有如下程序: #include using namespace std; class test private: int a; public: test() cout和 usingnamespacestd; classMyClass public: MyClass(intx): number(x)f ERROR*found*

6、 MyClass(intX) ERROR*found* voidjudge(MyClass“在编译时出错。 21 【正确答案】 B 【试题解析】 本题考查整型变量的类型, A、 C选项中前者为无符号的,后者为有符号的, D选项中 shortint为 2个字节, int为 4个字节。 22 【正确答案】 B 【试题解析】 3种继承方式:公用继承、私有继承和保护继承分别使用 public、private和 protected3 个关键字来定义。 23 【正确答案】 B 【试题解析】 数据库系统的三级模式是概念模式、外模式和内模式。概念模式是数据库系统中全局数据逻辑结构的描 述,是全体用户公共数据视

7、图。外模式也称子模式或用户模式,它是用户的数据视图,给出了每个用户的局部数据描述。内模式又称物理模式,它给出了数据库物理存储结构与物理存取方法,所以选择B)。 24 【正确答案】 A 【试题解析】 本题考查函数返回类型,函数返回类型可以是普通常量型的,可以返回指针以及自定义类型,但是不能包含关键字 true,所以 A选项错误。 25 【正确答案】 D 【试题解析】 执行派生类构造函数的顺序是: 1、调用基类构造函数, 2、调用子对象构造函数, 3、再执行派生类析构函数, 4、 执行基类的析构函数,所以本题中定义分别定义了 room1, room2后,调用构造函数后没有输出,而调用析构函数的顺序

8、依次为 room2的析构函数,输出 41,然后执行 Appliance的析构函数输出 T,然后执行 room1 的析构函数输出 0,最后执行 Appliance的析构函数输出A,所以 D选项正确。 26 【正确答案】 B 【试题解析】 本题考查字符常量中转义字符常量, n,r为转义字符,只占一个字节,所以该字符串的长度为 7。选项 B 正确。 27 【正确答案】 A 【试题解析】 派生类公用继承基 类,那么基类中私有不可访问,保护成员依旧是保护成员,公有成员依旧是公有成员;保护继承基类,那么基类的公用成员和保护成员在派生类中成为保护成员,私有成员不可访问;私有继承那么公有成员和保护成员变为私有

9、,私有成员不可访问。没有显式地显示继承方式,默认为私有继承。派生类可以直接访问的是公用继承基类的公有成员,所以 A选项正确。 28 【正确答案】 A 【试题解析】 在树结构中,定义一棵树的根结点所在的层次为,其他结点所在的层次等于它的父结点所在的层次加,树的最大层次称为树的深度。完全二叉树指除最后一层 外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干结点。深度为 5的二叉树,结点个数最多为 25-1=31,最少为 24=16,不可能是 15,故正确答案为 A选项。 29 【正确答案】 A 【试题解析】 横线处填写的语句,是重载前缀自增运算符 +的函数声明,为了与内置类型一致,前缀

10、自增运算符应该返回自增对象的引用,选项 C、 D错误;自增运算符是一元运算符,即操作数是类对象,所以参数列表为空,选项 B错误;答案为 A。 30 【正确答案】 B 【试题解析】 setw(n)用来设置输入输出数据 字段的宽度为 n 位,答案为 B。 31 【正确答案】 C 【试题解析】 重载函数调用时首先要从函数名称相同的候选函数中选择可行函数,可行函数必须满足两个条件: 1、函数的形参个数与该调用的实参个数相同;2、每个实参的类型必须与对应形参的类型匹配,或者可被隐式转换为对应的形参类型。参数名称可以不相同,答案选 C。 32 【正确答案】 D 【试题解析】 程序执行结束时,系统会自动调用

11、类的析构函数清理自己的成员,析构函数工作过程如下: 1、执行析构函数的函数体; 2、如果该类中拥有类对象成员,且类对象有析 构函数,则以类对象成员声明次序的相反顺序调用其析构函数,销毁类对象成员; 3、按原来构造顺序的相反顺序向上依次调用基类的析构函数。所以程序运行结束时,首先调用 BB的析构函数并执行函数体,输出 “m“;然后调用成员 m的析构函数,销毁 m成员,输出 M,再调用基类的析构函数,输出 C;综上所述,程序运行的输出是: “mMC“;答案为 D。 33 【正确答案】 A 【试题解析】 本题考查 if语句, if语句的条件部分不能嵌套 if 语句,所以 A选项错误; B选项就是 i

12、f语句嵌套; C选项其实就是将判断条件颠倒,然后执行 语句也颠倒,所以效果一样; D选项也正确。 34 【正确答案】 D 【试题解析】 本题考查默认构造函数和带参数的构造函数以及析构函数,本题中定义了一个对象 A(3),对象带着参数,所以执行带参数的构造函数,输出 3,然后执行析构函数,输出 destructor。所以本题答案为 D。 35 【正确答案】 A 【试题解析】 通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。也就是说,软件产品从考虑其概念开始,到该软件产品不能使用为止的整个时期都属于软件生命周期。 36 【 正确答案】 C 【试题解析】 本题考查默认构造

13、函数,如果用户定义的类中没有显式的定义任何构造函数,编译器就会自动为该类型生成默认构造函数,称为合成的构造函数。 C选项正确。 37 【正确答案】 A 【试题解析】 栈是先进后出的数据结构,所以栈顶元素最后入栈却最先被删除。栈底元素最先入栈却最后被删除。所以选择 A)。 38 【正确答案】 C 【试题解析】 在函数原型中指定默认参数值时,如果函数中有多个参数,则默认参数应从右至左定义,否则就是无效的,故本题选 C。 39 【正确答案】 A 【试题解析】 输入输出流出了 cin和 cout还有 cerr、 clog等,所以 CD选项错误, C+流不只是进行格式化输入输出,所以 B 选项错误, A

14、选项正确。 40 【正确答案】 A 【试题解析】 C+中,派生类构造函数的初始化列表只能初始化派生类的成员,不能直接初始化继承成员。所以派生类构造函数需要将基类构造函数包含在初始化列表中来间接初始化继承成员,选项 B错误; AA中的成员 a是 private成员,对 BB不可见,选项 C,D错误;答案为 A。 二、基本操作题 41 【正确答案】 (1)MyClass() (2)friendvoidjudge(MyClass /返回线段的长度 ,可知这里要输入 length()const。 (3)主要考查考生对成员函数的掌握 ,由函数声明 :double slope()const; /返回直线的斜率 ,可知返回语句要返回直线的斜率 ,因此要输入 :point2.getY() - point1.getY( )。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1