欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

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

    • 资源ID:1324389       资源大小:36KB        全文页数:8页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【计算机类职业资格】二级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;)解析:解析本题主要考查考生对于类的成员函数的定义和拷贝初始化函数的理解。


    注意事项

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




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

    收起
    展开