【计算机类职业资格】国家二级(C++)机试-试卷11-1及答案解析.doc
《【计算机类职业资格】国家二级(C++)机试-试卷11-1及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】国家二级(C++)机试-试卷11-1及答案解析.doc(16页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级(C+)机试-试卷 11-1 及答案解析(总分:86.00,做题时间:90 分钟)一、选择题(总题数:40,分数:80.00)1.在数据库设计中,将 ER 图转换成关系数据模型的过程属于( )。(分数:2.00)A.需求分析阶段B.概念设计阶段C.逻辑设计阶段D.物理设计阶段2.有如下程序: #include using namespace std; int main() void function(double val); double val; function(val); coutD.7.下列叙述中,错误的是(分数:2.00)A.false 是一个逻辑型常量B.0 是一个字符型常
2、量C.1481 是一个 int 常量D.1.732 是一个 double 常量8.下列有关类继承的表述中,错误的是(分数:2.00)A.继承可以实现软件复用B.派生类构造函数要负责调用基类的构造函数C.虚基类可以解决由多继承产生的二义性问题D.派生类没有继承基类的私有成员9.有如下 4 个语句: cout“,使得程序中可以“cinobj;“的形式改变 MyClass 类的对象 obj 中数据成员 data 的值,则横线处的声明语句应为( )。(分数:2.00)A.friendistreamB.friendistreamC.istreamD.istream34.下列关于 C+流的描述中,错误的是
3、( )。(分数:2.00)A.coutA表达式可输出字符 AB.eof()函数可以检测是否到达文件尾C.对磁盘文件进行流操作时,必须包含头文件 fstreamD.以 ios_base:out 模式打开的文件不存在时,将自动建立一个新文件35.运算符重载时不需要保持的性质是( )。(分数:2.00)A.操作数个数B.操作数类型C.优先级D.结合性36.有如下类声明:class Base protected:int amount;public:Base(int n=0): amount(n) int getAmount()const return amount; ;class Derived: p
4、ublic Base protected:int value;public:Derived(int m, int n):value(m), Base(n) int getData()const return value+amount; ;已知 x 是一个 Derived 对象,则下列表达式中正确的是( )。(分数:2.00)A.x.value+x.getAmount()B.x.getData()-x.getAmount()C.x.getData()-x.amountD.x.value+x.amount37.有如下程序段: int i=2;int j=3; int main() int i=9,
5、 j=i; cout D.解析:解析:本题考查模板的定义,使用的括号为“不能重载为类的成员函数,因为如果将这两种操作符重载为类的成员函数,左操作数将只能是该类类型的对象,这样的用法与正常 I/O 使用方式相反,为了支持正常用法,左操作数必须为标准库 I/O 内置类型,这又意味着如果该操作符重载为类的成员,那它必须是标准库内置类型的类成员,而标准库内置的类是不能人为添加成员的,D 选项错误;答案为 C。31.有如下类声明: class Why int n; public: double d; protected: long l; float f; private: char c; ;类 Why
6、的保护数据成员和私有数据成员的数量分别是(分数:2.00)A.1 和 1B.1 和 2C.2 和 1D.2 和 2 解析:解析:C+中,使用 class 关键字定义的类,默认的成员访问级别是私有的,所以类 Why 中,保护成员有:l、f;私有成员有:n、c。答案为 D。32.设数据集合为 D=1,3,5,7,9,D 上的关系为 R,下列数据结构 B=(D,R)中为非线性结构的是(分数:2.00)A.R=(5,1),(7,9),(1,7),(9,3)B.R=(9,7),(1,3),(7,1),(3,5)C.R=(1,9),(9,7),(7,5),(5,3)D.R=(1,3),(3,5),(5,9
7、) 解析:解析:一个非空的数据结构如果满足以下两个条件:有且只有一个根结点;每一个结点最多有一个前件,也最多有一个后件,则称为线性结构,在数据结构中习惯称为线性表。A 选项中,5 为根结点,线性表为 51793。B 选项中,9 为根结点,线性表为 97135。C 选项中,1 为根结点,线性表为 19753。D 选项,结点 1 与 7 都是根结点,属于非线性结构,故 D 选项正确。33.有如下类定义:class MyClass public: private: int data; ;若要为 MyClass 类重载流输入运算符“,使得程序中可以“cinobj;“的形式改变 MyClass 类的对象
8、 obj 中数据成员 data 的值,则横线处的声明语句应为( )。(分数:2.00)A.friendistream B.friendistreamC.istreamD.istream解析:解析:本题考查重载流运算符“,根据重载规则,本题答案为 A。34.下列关于 C+流的描述中,错误的是( )。(分数:2.00)A.coutA表达式可输出字符 A B.eof()函数可以检测是否到达文件尾C.对磁盘文件进行流操作时,必须包含头文件 fstreamD.以 ios_base:out 模式打开的文件不存在时,将自动建立一个新文件解析:解析:本题考查 C+流,想要输出字符“A“,则应该是 coutIn
9、c();)解析:解析:(1)考查考生对 const 的掌握,在 Inc 函数的函数体cout“no“+count”,而不能使用“”。三、简单应用题(总题数:1,分数:2.00)42.请使用 VC6 或使用【答题】菜单打开考生文件夹 proj2 下的工程 proj2,其中定义了 vehicle 类,并派生出 motorcar 类和 bicycle 类。然后以 motorcar 和 bicycle 作为基类,再派生出 motorcycle 类。要求将 vehicle 作为虚基类,避免二义性问题。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:80150100
10、1 注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“*found*”。#includeiostreamhclasSvehicleprivate:intMaxSpeed;intWeight;public:*found*vehicle(intmaxspeed,intweight):_一 vehicle();intgetMaxSpeed()returnMaxSpeed;intgetWeight()returnWeight;,*found*classbicycle:_publicvehicleprivate:intHeight;public:bicycle(intmaxs
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 国家 二级 试试 111 答案 解析 DOC
