【计算机类职业资格】计算机二级(C++)上机考试2及答案解析.doc

上传人:unhappyhay135 文档编号:1337849 上传时间:2019-10-17 格式:DOC 页数:3 大小:36KB
下载 相关 举报
【计算机类职业资格】计算机二级(C++)上机考试2及答案解析.doc_第1页
第1页 / 共3页
【计算机类职业资格】计算机二级(C++)上机考试2及答案解析.doc_第2页
第2页 / 共3页
【计算机类职业资格】计算机二级(C++)上机考试2及答案解析.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

1、计算机二级(C+)上机考试 2 及答案解析(总分:-3.00,做题时间:90 分钟)1.改错题 使用 VC6 打开考生文件夹下的工程 test17_1,此工程包含一个源程序文件 test17_1.cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下: Vehicle message Car message Vehicle message 源程序文件 test17_1.cpp 清单如下: #include class vehicle int wheels; float weight; public: /* found */ void message(void) cout“Car

2、message/n“; ; class truck:public vehicle int passenger_load; float payload; public: int passengers(void)return passenger_load; ; void main() vehicle * unicycle; unicycle=new vehicle; /* found */ unicycle.message(); delete unicycle; unicycle=new car; unicycle-message(); delete unicycle; unicycle=new

3、truck; unicycle-message(); delete unicycle; (分数:-1.00)_2.简单应用题 编写函数 fun(),它的功能是利用以下所示的简单迭代方法求方程 cos(x)-x=0 的一个实根。xn+1 =cos(xn) 迭代步骤如下: (1)取 x1 初值为 0.0。 (2)x0=x1,把 x1 的值赋给 x0。 (3)x1=cos(x0),求出一个新的 x1。 (4)若 x0-x1 的绝对值小于 0.000001, 则执行步骤(5),否则执行步骤(2)。 (5)所求x1 就是方程 cos(x)-x=0 的一个实根,做为函数值返回。 程序输出结果 Root=0

4、739085。 注意:部分源程序已存在文件 test6_2.cpp 中。 请勿改动主函数 main 和其他函数中的任何内容,仅在函数 fun 的花括号中填入所编写的若干语句。 文件 test6_2 的内容如下: #include #include #include float fun() void main() cout radius; cout fence; cout concrete; Circle Pool(radius); Circle PoolRim(radius + WIDTH); Money mon(fence,concrete); float totalmoney=mon.T

5、otalMoney(PoolRim.Circumference(),(PoolRim.Area() - Pool.Area(); cout “Car message/n“; ; class truck:public vehicle int passenger_load; float payload; public: int passengers(void)return passenger_load; ; void main() vehicle * unicycle; unicycle=new vehicle; /* found */ unicycle.message(); delete uni

6、cycle; unicycle=new car; unicycle-message(); delete unicycle; unicycle=new truck; unicycle-message(); delete unicycle; (分数:-1.00)_正确答案:((1)错误:void message(void) cout“Car message/n“; 正确:void message (void)coutmessage(); )解析:(1)主要考查考生对于虚函数使用规则的掌握,要实现对函数 message 的动态联编应该使用虚函数,否则产生的是静态联编,调用的函数输出结果就与要求不符;

7、 (2)主要考查考生对于流输出操作的掌握,该处错误的使用了流输入操作; (3)主要考查考生是否能分清对象和对象指针,对象指针使用“-“调用成员函数,而对象使用“.“调用成员函数。 2.简单应用题 编写函数 fun(),它的功能是利用以下所示的简单迭代方法求方程 cos(x)-x=0 的一个实根。xn+1 =cos(xn) 迭代步骤如下: (1)取 x1 初值为 0.0。 (2)x0=x1,把 x1 的值赋给 x0。 (3)x1=cos(x0),求出一个新的 x1。 (4)若 x0-x1 的绝对值小于 0.000001, 则执行步骤(5),否则执行步骤(2)。 (5)所求x1 就是方程 cos(

8、x)-x=0 的一个实根,做为函数值返回。 程序输出结果 Root=0.739085。 注意:部分源程序已存在文件 test6_2.cpp 中。 请勿改动主函数 main 和其他函数中的任何内容,仅在函数 fun 的花括号中填入所编写的若干语句。 文件 test6_2 的内容如下: #include #include #include float fun() void main() cout=1e-6); return x1; )解析:解答本题的关键之处在于看清题中所给的“迭代步骤“,同时要理解 xn+1=cosxn 通式的含义,要考虑到 x1 的初值为 0.0。注意:fabs()函数的功能是

9、用来求某数的绝对值,用时要进行文件包含#include 。 3.综合应用题 使用 VC6 打开考生文件夹下的工程 test9_3,此工程包含一个源程序文件 test9_3.cpp,其中定义了 Circle 类与 Money 类,Circle 类可对半径为 r 的圆进行周长与面积的计算,而 Money 类用于计算一圆形游泳池的造价。游泳池四周有原形过道,过道外围上栅栏,过道宽度为 3 米,根据键入的游泳池半径,每米栅栏价格及每平方米过道价格,即可计算出游泳池的造价。请按要求完成下列操作,将程序补充完整。 (1)定义符号常量 PI(值为 3.14159f)与 WIDTH(值为 3.00f),分别用

10、于表示圆周率与过道的固定宽度。请在注释“/*1*“之后添加适当的语句。 (2)定义 Circle 类默认构造函数,把私有成员radius 初始化为参数 r 的值。请在注释 “/*2*“ 之后添加适当的语句; (3)完成 Money 类默认构造函数的定义,把私有成员 FencePrice(每米栅栏的价格)、 ConcretePrice(每平方米过道的价格)初始化为参数 f,c 的值。请在注释“/*3*“之后添加适当的语句。 (4)完成 Money 类成员函数 float Money:TotalMoney(float fencelen, float conarea)的定义,根据参数 fencele

11、n(栅栏的长度)和conarea(过道的面积),返回栅栏与过道的总造价。请在注释“/*4*“之后添加适当的语句。 注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。 源程序文件 test9_3.cpp 清单如下: #include /*1* class Circle private: float radius; public: /*2* float Circumference()return 2 * PI * radius; float Area()return PI * radius * radius; ; class Money private: float FencePrice

12、 float ConcretePrice; public: Money(float f,float c); float TotalMoney(float fencelen, float conarea); ; Money:Money(float f,float c) /*3* float Money:TotalMoney(float fencelen, float conarea) /*4* void main() float radius,fence,concrete; cout.setf(ios:fixed); cout.setf(ios:showpoint); cout.precisi

13、on(2); cout radius; cout fence; cout concrete; Circle Pool(radius); Circle PoolRim(radius + WIDTH); Money mon(fence,concrete); float totalmoney=mon.TotalMoney(PoolRim.Circumference(),(PoolRim.Area() - Pool.Area(); cout “The total money is RMB “ totalmoney endl; (分数:-1.00)_正确答案:((1) const float PI = 3.14159f; const float WIDTH =3.00f; (2) Circle(float r):radius(r); (3) FencePrice=f; ConcretePrice=c; (4) return FencePrice*fencelen+ConcretePrice*conarea; )解析:本题考查了考生对符号常量的定义及类的定义与实现等方面的内容。注意常类型的定义应使用const 关键字。

展开阅读全文
相关资源
猜你喜欢
  • ASD-STAN PREN 2276-1979 Steel FE-PA95 1750 MPa Less Than or Equal to Rm Less Than or Equal to 2000 MPa Sheet and Plate a Less Than or Equal to 40 mm Aerospace Series (Edition 1)《航空.pdf ASD-STAN PREN 2276-1979 Steel FE-PA95 1750 MPa Less Than or Equal to Rm Less Than or Equal to 2000 MPa Sheet and Plate a Less Than or Equal to 40 mm Aerospace Series (Edition 1)《航空.pdf
  • ASD-STAN PREN 2278-2013 Aerospace series Steel X12CrNiMoV12-3 (1 4933) 900 MPa Less than or equal to Rm Less than or equal to 1 100 MPa Bars De Less than or equal to 150 mm (Editio.pdf ASD-STAN PREN 2278-2013 Aerospace series Steel X12CrNiMoV12-3 (1 4933) 900 MPa Less than or equal to Rm Less than or equal to 1 100 MPa Bars De Less than or equal to 150 mm (Editio.pdf
  • ASD-STAN PREN 2279-1979 Steel FE-PM37 900 MPa Less Than or Equal to Rm Less Than or Equal to 1100 MPa Forgings De Less Than or Equal to 150 mm Aerospace Series (Edition 1)《航空航天系列 钢.pdf ASD-STAN PREN 2279-1979 Steel FE-PM37 900 MPa Less Than or Equal to Rm Less Than or Equal to 1100 MPa Forgings De Less Than or Equal to 150 mm Aerospace Series (Edition 1)《航空航天系列 钢.pdf
  • ASD-STAN PREN 2280-1979 Steel FE-PM37 900 MPa Less Than or Equal to Rm Less Than or Equal to 1100 MPa Sheet a Less Than or Equal to 6 mm Aerospace Series (Edition 1)《航空航天系列 钢FE-PM3.pdf ASD-STAN PREN 2280-1979 Steel FE-PM37 900 MPa Less Than or Equal to Rm Less Than or Equal to 1100 MPa Sheet a Less Than or Equal to 6 mm Aerospace Series (Edition 1)《航空航天系列 钢FE-PM3.pdf
  • ASD-STAN PREN 2281-1979 Steel FE-PM42 900 MPa Less Than or Equal to Rm Less Than or Equal to 1100 MPa Forgings De Less Than or Equal to 100 mm Aerospace Series (Edition 1)《航空航天系列 D.pdf ASD-STAN PREN 2281-1979 Steel FE-PM42 900 MPa Less Than or Equal to Rm Less Than or Equal to 1100 MPa Forgings De Less Than or Equal to 100 mm Aerospace Series (Edition 1)《航空航天系列 D.pdf
  • ASD-STAN PREN 2282-2002 Aerospace Series Characteristics of Aircraft Electrical Supplies (Edition P 1)《航空航天系列 航空器电源的特性 第P1版》.pdf ASD-STAN PREN 2282-2002 Aerospace Series Characteristics of Aircraft Electrical Supplies (Edition P 1)《航空航天系列 航空器电源的特性 第P1版》.pdf
  • ASD-STAN PREN 2283-2009 Aerospace series Testing of aircraft wiring (Edition P 1)《航空航天系列 航空器布线系统的试验 第P1版》.pdf ASD-STAN PREN 2283-2009 Aerospace series Testing of aircraft wiring (Edition P 1)《航空航天系列 航空器布线系统的试验 第P1版》.pdf
  • ASD-STAN PREN 2285-2002 Aerospace Series Bushes Plain Aluminium Alloy with Self-Lubricating Liner Dimensions and Loads (Edition P 1)《航空航天系列 带自润滑衬套的普通铝合金套管 尺寸和负荷 第P1版》.pdf ASD-STAN PREN 2285-2002 Aerospace Series Bushes Plain Aluminium Alloy with Self-Lubricating Liner Dimensions and Loads (Edition P 1)《航空航天系列 带自润滑衬套的普通铝合金套管 尺寸和负荷 第P1版》.pdf
  • ASD-STAN PREN 2286-2002 Aerospace Series Bushes Flanged Aluminium Alloy with Self-Lubricating Liner Dimensions and Loads (Edition P 1)《航空航天系列 带自润滑衬套的普通铝合金带凸缘套管 尺寸和负荷 第P1版》.pdf ASD-STAN PREN 2286-2002 Aerospace Series Bushes Flanged Aluminium Alloy with Self-Lubricating Liner Dimensions and Loads (Edition P 1)《航空航天系列 带自润滑衬套的普通铝合金带凸缘套管 尺寸和负荷 第P1版》.pdf
  • 相关搜索

    当前位置:首页 > 考试资料 > 职业资格

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