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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

【计算机类职业资格】国家二级C++机试(操作题)-试卷63及答案解析.doc

1、国家二级 C+机试(操作题)-试卷 63 及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.使用 VC6 打开考生文件夹下的源程序文件 modilcpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为: TestClass 1 TestClass2 注意:不要改动 main 函数,不能增行或删行,也不能更改程序的结构,错误的语句在 *error*的下面。 #include #include struct TestClas0 *error* virtual void fun(); ; class TestClassl:p

2、ublic TestClass0 void fun() coutfun(); return; (分数:2.00)_二、简单应用题(总题数:1,分数:2.00)2.使用 VC6 打开考生文件夹下的源程序文件 modi2cpp。阅读下列函数说明和代码,补充空出的代码。sum(int n)计算所有 n 的因子之和(不包括 1 和自身)。 注意:不能修改程序的其他部分,只能补充 sum()函数。 #include int sum(int n) ) void main() coutfun(); return; (分数:2.00)_正确答案:(正确答案:(1)virtual void fun()=0; (

3、2)p=&obj 1; (3)p=&obj 2;)解析:解析:本题程序中的功能为输出字符串 TestClassl 和 TestClass2。从已定源程序的 main 主函数开始入手,通过定义的类,实现题目中要求的输出结果。 解题思路 (1)如果在基类中并不使用这个虚函数,其返回值也是没有意义的,它应该被定义为纯虚函数。所以虚函数 fun()应该是纯虚函数,也就是声明虚函数的时候初始化为 0 的函数。即第 1 个标识下的“virtual void fun()=0;”。 (2)第 2 个标识下的 p 为指针变量,将对象 objl 赋值给 p,实际上是 p 指向对象 objl 的地址,所以“p=*0

4、bjl;”修改为“p=&obiil;”。 (3)第 3 个标识下的“p=*obi2;”语句同(2),修改为“p=&obj2;”。二、简单应用题(总题数:1,分数:2.00)2.使用 VC6 打开考生文件夹下的源程序文件 modi2cpp。阅读下列函数说明和代码,补充空出的代码。sum(int n)计算所有 n 的因子之和(不包括 1 和自身)。 注意:不能修改程序的其他部分,只能补充 sum()函数。 #include int sum(int n) ) void main() coutsum(10)sum(200)sum(400)_正确答案:(正确答案:int a11=0; for(int i

5、=2;i解析:解析:(1)数 n 的因子是指为整除 n 等于 0 的所有自然数的集合。 (2)为了实现计算所有 n 的因子之和且不包含 1 和自身,函数中定义一个变量 all 用来保存求和结果,并为最终结果在函数结束时返回; (3)在循环中逐个寻找 n 的因子,为了在计算中排除掉 l 和 n 本身,因此循环变量 i 的变化范围为从 2 到n 一 1。 (4)如果 ni=0,说明 i 是 n 的因子,因此将 i 加到 all 上。三、综合应用题(总题数:1,分数:2.00)3.使用 VC6 打开考生文件夹下的源程序文件 modi3cpp。请完成以下部分,实现在屏幕上输出为: TestClass3

6、 TestClass2 这个程序需要修改的部分,请按照以下部分实现。 (1)类 TestClass0 不能被实例化,请定义一个纯虚函数 print,在注释*1*后添加适当的语句。 (2)类 TestClassl私有虚继承类 TestClass0,请在注释*2*后添加适当的语句。 (3)类 TestClass2 公有继承类 TestClass0,请在注释*3*后添加适当的语句。 (4)类 TestClass3 公有继承类TestClass2 与 TestClassl,请在注释*4*后添加适当的语句。 注意:仅在函数指定位置添加语句,请勿改动主函数 main 与其他函数中的任何内容。 1 #inc

7、lude 2 class TestClass0 3 4 *1* 5 6 ; 7 *2* 8 C1ass TestClassl: 9 10 public: 11 void print() 12 13 cout”TestClassl”“TestClass2”“TestClass3”_正确答案:(正确答案:(1)添加语句:virtual void print()=0; (2)将“class TestClasSl:”补充完整为:classTestClassl:virtual private TestClasS0 (3)将“class TestClass2:”补充完整为:classTestClass2:

8、public TestClass0 (4)将“class TestClass3:”补充完整为:classTestClass3:public TestClass2,public TestClassl)解析:解析:在 VC 环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。本题从题干要求入手,依次处理各个类,完成各个类的定义。 解题思路 (1)题目 1 要求“请定义一个纯虚函数 print”。在 C+中,虚函数在基类中用 virtual 声明成员函数为虚函数。纯虚函数是在声明虚函数时被“初始化”为 0 的函数,即“virtualvoid print0=0;”。 (

9、2)题目 2 要求“类TestClassl 私有虚继承类 TestClass0”。在 C+中声明一个派生类时将基类的继承方式指定为 private的,称为私有继承。同(1),声明 TestClassl 虚继承类“:virtualTestClass0”,题目要求为私有,即“class TestClassl:virtualprivate TestClass0”。 (3)题目 3 要求“类 TestClass2 公有继承类TestClass0。”同(2),公有继承是在定义一个派生类时将基类的继承方式指定为 public 的,称为公用继承。所以这里补全“classTestClass2:public TestClass0”。 (4)题目 4 要求“类 TestClass3 公有继承类 TestClass2 与 TestClassl。”同(3),所以这里补全“class TestClass3:public TestClass2,public TestClass l”。

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