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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

【计算机类职业资格】二级C++机试-68及答案解析.doc

1、二级 C+机试-68 及答案解析(总分:100.00,做题时间:90 分钟)一、1改错题(总题数:1,分数:30.00)1.使用 VC6 打开考生文件夹下的工程 test25_1,此工程包含一个源程序文件 test25_1.cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下:privatel from derived1:30privatel from derived2:30源程序文件 test25_1.cpp 清单如下:/*found*/includeiostream.hclass baseprotected:int privatel;public:base(int p)pr

2、ivatel=p;/*found*/class derived1:public basepublic:derivedl(int p1):base(p1);int get_private()return private1;class derived2:virtua1 public basepublic:derived2(int p2):base(p2);int get_private()return private1;class derived12:public derived1,public derived2public:/*found*/derived12(int p1,int p2,int

3、 pb):derived1(p1), base(pb), derived2(p2);void main()derived12 d(10,20,30);cout“privatel from derived1:“d.derived1:get_private();cout“/nprivatel from derived2:“d.derived2:get_private();coutendl;(分数:30.00)填空项 1:_二、2简单应用题(总题数:1,分数:40.00)2.请编写两个函数 int sum_of_powers(int k,int n),powers(int m,int n),求 16

4、 的 k 次方的和,sum_of_powers 中参数 k 和 n 分别表示 k 次方和所求数列中最大的一个自然数,最后返回所求值,powers中参数 m 和 n 分别表示 m 为底数 n 为指数,最后返回所求值。要求使用 for 循环和函数嵌套(int sum_of_powers 中调用 powers)实现算法。输出结果如下:sum of 4 powers of intergers from 1 to 6=2275注意:部分源程序已存在文件 test25_2.cpp 中。请勿修改主函数 main 和其他函数中的任何内容,仅在函数 sum_of_powers 和 powers 的花括号中填写若

5、干语句。文件 test25_2.cpp 的内容如下:#includeiostream.hconst int k(4);const int n(6); int sum_of_powers(int k,int n),powers(int m,int n);void main()cout“sum of “k“ powers Of intergers from 1 to “n“=“;coutsum_of_powers(k,n)endl;int sum_of_powers(int k,int n)int powers(int m, int n)(分数:40.00)_三、3综合应用题(总题数:1,分数:3

6、0.00)3.使用 VC6 打开考生文件夹下的工程 test25_3,此工程包含一个源程序文件 test25_3.cpp,其中定义了用于表示堆的类 Set,但它的定义并不完整。请按要求完成下列操作,将程序补充完整。(1)完成成员函数 int IsMemberOf(int n)的定义,该函数检查参数 n 是否在类的数据成员数组 elems 中,如果在返回 1,反之返回 0。请在注释“/*1*”之后添加适当的语句。(2)完成成员函数 int Add(int n)的定义,如果参数 n 包含在类的数据成员数组 elems 中则返回 1 如果数组超界则返回 0,如果都不是,则将参数 n 插入到 elem

7、s 中,下标大小为类的数据成员 PC,之后 PC 自加一。请在注释“/*2*”之后添加适当的语句。(3)完成拷贝初始化构造函数 Set(Set Set(Set void Empty() PC=O;int IsEmpty() return PC=O;int IsMemberOf(int n);int Add(int n);void Print();private:int elems100;int PC;int Set:IsMemberOf(int n)/*1*if(elemsi=n)return 1;return O;int Set:Add(int n)/*2*return 1;else if(

8、PC=100)return O;elseelemsPC+=n;return 1;Set:Set(Set iPC; i+)elemsi=s.elemsi;void Set:Print()cout“;for(int i=O; iPC-1; i+)coutelemsi“,“;if(PCO)coutelemsPC-1;cout“endl;void main()Set A;coutA.IsEmpty()endl;A.Print();Set B;for(int i=l; i=8; i+)B.Add(i);B.Print();(分数:30.00)_二级 C+机试-68 答案解析(总分:100.00,做题时间

9、90 分钟)一、1改错题(总题数:1,分数:30.00)1.使用 VC6 打开考生文件夹下的工程 test25_1,此工程包含一个源程序文件 test25_1.cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下:privatel from derived1:30privatel from derived2:30源程序文件 test25_1.cpp 清单如下:/*found*/includeiostream.hclass baseprotected:int privatel;public:base(int p)privatel=p;/*found*/class derived

10、1:public basepublic:derivedl(int p1):base(p1);int get_private()return private1;class derived2:virtua1 public basepublic:derived2(int p2):base(p2);int get_private()return private1;class derived12:public derived1,public derived2public:/*found*/derived12(int p1,int p2,int pb):derived1(p1), base(pb), de

11、rived2(p2);void main()derived12 d(10,20,30);cout“privatel from derived1:“d.derived1:get_private();cout“/nprivatel from derived2:“d.derived2:get_private();coutendl;(分数:30.00)填空项 1:_ (正确答案:(1)错误:includeiostream.h正确:#includeiostream.h(2)错误:class derivedl:public base正确:class derivedl:virtual public base

12、3)错误:derived12(int p1,int p2,int pb):derivedl(p1),base(pb),derived2(p2);正确:derived12(int p1,int P2,int Pb):derivedl(P1),derived2(p2),base(Pb);)解析:解析(1)主要考查考生对于 include 关键字的掌握,它的正确使用是#include;(2)主要考查考生对于虚基类的使用,为了正确的显示结果,这里应该使用虚基类的定义,这样在调用函数的时候就可以不产生二义性;(3)主要考查考生对于初始化参数表中赋值顺序的掌握,它是按照从右至左依次赋值的。二、2简单应用

13、题(总题数:1,分数:40.00)2.请编写两个函数 int sum_of_powers(int k,int n),powers(int m,int n),求 16 的 k 次方的和,sum_of_powers 中参数 k 和 n 分别表示 k 次方和所求数列中最大的一个自然数,最后返回所求值,powers中参数 m 和 n 分别表示 m 为底数 n 为指数,最后返回所求值。要求使用 for 循环和函数嵌套(int sum_of_powers 中调用 powers)实现算法。输出结果如下:sum of 4 powers of intergers from 1 to 6=2275注意:部分源程序

14、已存在文件 test25_2.cpp 中。请勿修改主函数 main 和其他函数中的任何内容,仅在函数 sum_of_powers 和 powers 的花括号中填写若干语句。文件 test25_2.cpp 的内容如下:#includeiostream.hconst int k(4);const int n(6); int sum_of_powers(int k,int n),powers(int m,int n);void main()cout“sum of “k“ powers Of intergers from 1 to “n“=“;coutsum_of_powers(k,n)endl;in

15、t sum_of_powers(int k,int n)int powers(int m, int n)(分数:40.00)_正确答案:(1)int sum_of_powers(int k,int n)int sum(0);for(int i=1;i=n;i+)sum+=powers(i,k);return sum;(2)int powers(int m, int n)int i,product(1);for(i=1;i=n;i+)product*=m;return product;)解析:解析本题考查的是考生使用 for 循环和函数嵌套解决一般问题的能力。注意最后将计算的值返回。三、3综合应

16、用题(总题数:1,分数:30.00)3.使用 VC6 打开考生文件夹下的工程 test25_3,此工程包含一个源程序文件 test25_3.cpp,其中定义了用于表示堆的类 Set,但它的定义并不完整。请按要求完成下列操作,将程序补充完整。(1)完成成员函数 int IsMemberOf(int n)的定义,该函数检查参数 n 是否在类的数据成员数组 elems 中,如果在返回 1,反之返回 0。请在注释“/*1*”之后添加适当的语句。(2)完成成员函数 int Add(int n)的定义,如果参数 n 包含在类的数据成员数组 elems 中则返回 1 如果数组超界则返回 0,如果都不是,则将

17、参数 n 插入到 elems 中,下标大小为类的数据成员 PC,之后 PC 自加一。请在注释“/*2*”之后添加适当的语句。(3)完成拷贝初始化构造函数 Set(Set Set(Set void Empty() PC=O;int IsEmpty() return PC=O;int IsMemberOf(int n);int Add(int n);void Print();private:int elems100;int PC;int Set:IsMemberOf(int n)/*1*if(elemsi=n)return 1;return O;int Set:Add(int n)/*2*retu

18、rn 1;else if(PC=100)return O;elseelemsPC+=n;return 1;Set:Set(Set iPC; i+)elemsi=s.elemsi;void Set:Print()cout“;for(int i=O; iPC-1; i+)coutelemsi“,“;if(PCO)coutelemsPC-1;cout“endl;void main()Set A;coutA.IsEmpty()endl;A.Print();Set B;for(int i=l; i=8; i+)B.Add(i);B.Print();(分数:30.00)_正确答案:(1)for(int i=O;iPC;i+)(2)if(IsMemberOf(n)(3)PC=s.PC;)解析:解析本题主要考查考生对于类的成员函数的定义和拷贝初始化函数的理解。

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