[计算机类试卷]国家二级C++机试(操作题)模拟试卷293及答案与解析.doc
《[计算机类试卷]国家二级C++机试(操作题)模拟试卷293及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级C++机试(操作题)模拟试卷293及答案与解析.doc(8页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C+机试(操作题)模拟试卷 293及答案与解析 一、基本操作题 1 请使用 VC6或使用【答题】菜单打开考生文件夹 proj1下的工程 proj1,该工程中包含程序文件 main epp,其中有关 TVSet(“电视机 ”)和主函数 main的定义。程序中位于每个 “ ERROR *found*”之后的一行语句有错误,请加以改正。改正后程序的输出结果应该是: 规格: 29英寸,电源:开,频道: 5,音量: 18 规格: 29英寸,电源:关,频道: 1,音量: 1 注意 :只修改每个 “ ERROR *found*”下的那一行,不要改动程序中的其他内容。 #include iostre
2、am using namespace std; class TVSet “电视机 ”类 const int size; int channel; 频道 int volume; 音量 bool on; 电源开关: true表示开, false表示关 public: ERROR *found* TVSet(int size) thiS Size(size); channel 0; volume 15; on false; int getsize()constreturnsize; 返回电视机规格 bool isOn()constreturnon; ) 返回电源开关状态 返回当前音量,关机情况下返回
3、 1 int getVolume()const returnisOn()?volume: 1; 返回当前频道,关机情况下返回 1 int getChannel()constreturn isOn()?channel: 1; ) ERROR *found* void turnOnOff()const 将电源在 “开 ”和 “关 ”之间转换 on !on; ) void setChannelTo(int chan) 设置频道 (关机情况下无效 ) if(isOn() chan 0 chan 99) channel chan; void setVolumeTo (int vol) 设置音量 (关机情
4、况下无效 ) if(isOn() vol 0 vol 30) volume vol, void show state() ERROR *found* cout “规格: “ getsize() “英寸 “ “,电源: “ (isOn()?“开 “: “关 “) “,频道: “ getChannel() “,音量: “ getVolume() end1; ; int main() TVSet tv(29); tv turnOnOff(); tv setChanneiTo(5); tv setVolumeTo(18); tv show state(); tv turnOnOff(); tv sho
5、w State(); return 0; 二、简单应用题 2 请使用 VC6或使用【答题】菜单打开考生文件夹 proj2下的工程 proj2。该工程中包含一个程序文件 main cpp,其中有类 Quadritic、类 Root及主函数 main的定义。一个 Quadritic对象表示一个 a2 b c的一元二次多项式。一个 Root对象用于表示方程 a2 b c 0的一组根,它的数据成员 hum_of_roots有 3种可能的值,即 0、 1和 2,分别表示根的 3种情况:无实根、有两个相同的实根和有两个不同的实根。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输
6、出结果应为 (注:输出中的 X表示 2): 3X 2 4X 50 0 无实根 4 5X 2 6X 2 0 0 有两个相同的实根: 0 666667和 0 666667 1 5X 2 2X 3 0 0 有两个不同的实根: 0 896805和 2 23014 注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动 “*found*”。 #1nclude lostream #include iomanip #include cmath using namespace std; class Root 一元二次方程的根 public: const double x1; 第一个根 c
7、onst double x2; 第二个根 const int num_of_roots;不同根的数量: 0、 1或 2 创建一个 “无实根 ”的 Root对象 Root(): x1(0 0),x2(0 0), num_of_roots(0) 创建一个 “有两个相同的实根 ”的 Root对象 Root(double root) *found* : _ 创建一个 “有两个不同的实根 ”的 Root对象 Root(double root1, doubleroot2): x1(root1),x2(root2), num of roots(2) void show()const 显示根的信息 cout
8、“ tt“; switch(num_of_roots) case 0: *found* case 1: cout “有两个相同的实根: “ x1 “和 “ x2; break; default: cout “有两个不同的实根: “ x1 “和 “ x2; break; ; class Quadratic 二次多项式 public: const double a, b, c;分别表示二次项、一次项和常数项等 3个系数 Quadratic(double a, double b, double c) 构造函数 *found* : _ Quadratic(Quadratic&x) 复制构造函数 : a
9、(x a), b(x b), c(x c) Quadratic add(Quadratic x) const 求两个多项式的和 return Quadratic(a x a, b x b, c x c); Quadratic sub (Quadratic x)const 求两个多项式的差 *found* double value(double X)const 求二次多项式的值 return a*x*x b*x c; Root root()const求一元二次方程的根 double delta b*b 4*a*c;计算判别式 if(delta 0 0)return Root(); if(delt
10、a 0 0) return Root( b (2*a); double sq sqrt(delta); return Root( b sq) (2*a), ( b sq) (2*a); void show()const 显示多项式 cout end1 a “X 2“ showpos b “X“ C noshowpos; void showFunction() 显示一元二次方程 show(); cout “ 0 0“; ; int main() Quadratic q1(3 0, 4 0, 5 0),q2(4 5, 6 0, 2 0), q3(q2 sub(q1); q1 showFunctio
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 机试 操作 模拟 293 答案 解析 DOC
