ImageVerifierCode 换一换
格式:DOC , 页数:29 ,大小:79KB ,
资源ID:502373      下载积分:2000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-502373.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文([计算机类试卷]国家二级(C++)机试模拟试卷105及答案与解析.doc)为本站会员(brainfellow396)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

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

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