[计算机类试卷]国家二级C++机试(操作题)模拟试卷37及答案与解析.doc

上传人:dealItalian200 文档编号:497465 上传时间:2018-11-28 格式:DOC 页数:6 大小:33.50KB
下载 相关 举报
[计算机类试卷]国家二级C++机试(操作题)模拟试卷37及答案与解析.doc_第1页
第1页 / 共6页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷37及答案与解析.doc_第2页
第2页 / 共6页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷37及答案与解析.doc_第3页
第3页 / 共6页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷37及答案与解析.doc_第4页
第4页 / 共6页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷37及答案与解析.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、国家二级 C+机试(操作题)模拟试卷 37及答案与解析 一、基本操作题 1 使用 VC6打开考生文件夹下的源程序文件 modi cpp,该程序运行时有错误,请改正错误,使得程序正常运行,并且要求最后一个 catch()必须抛出执行的任何异常。 程序通过抛出异常输出: error ERROR 注意:不要改动 main函数,不能增行或删行,也不能更改程序的结构,错误的语句在 *error*的下面。 1 #include 2 int main() 3 4 try 5 f 6 throw(“error“); 7 8 *error* 9 catch(char S) 10 11 cout 2 #inclu

2、de 3 int factorial(int n) 4 5 6 7 void main() 8 9 cout 2 #include 3 USing namespace std; 4 class TestClassl 5 6 *1* 7 8 public: 9 *2* 10 11 12 X=a; 13 Y=b; 14 15 *3* 16 17 18 X=a; 19 Y=0; 20 21 void print() 22 23 cout1时,此时递归函数调用自己,即 factorial(n)=n*factorial(n 1),此时的函数的返回值是 n*factorial(n-1),如此来实现递归调用

3、。 三、综合应用题 3 【正确答案】 (1)添加语句: friend class TestClass2 ; (2)添加语句: TestClassl(float a, float b) (3)添加语句: TestClassl(float a) (4)添加语句: result=sqrt(p X-q X)*(p Xq X)+(p Yq Y)*(p Yq Y); 【试题解析】 在 VC环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已给定源程序的 main主函数开始入手,可以看出程序通过调用类 TestClass实现各种输出操作。 解题思路 (1)题目 1要求 “

4、声明 TestClass2类为 TestClassl类的友元类 ”。 C+中声明友元类的一般形式为 friend类名;,所以这里补全 “friend class TestClass2; ”。 (2)题目 2要求 “完成类的构造函数,分别对成员变量赋值 ”。程序中 TestClassl类的构造函数缺少定义,构造函数首部的一般格式为:构造函数名 (类型 l形参 1,类型 2形参 2, ) ,所以在第 2个标识下补全 “TestClassl(float a, float b)”。 (3)题目 3要求 “完成类的构造函数,分别对成员变量赋值 ”。同理,第三个标识下补全 “TestClassl(float a)”。 (4)题目 4要求 “完成计算平面上两点之间的距离函数 Distance”。题目中已经给出了计算方法, X坐标之差的平方与 Y坐标之差的平方之和的开方。利用 C+中的开方函数 sqn补全函数中的两点之间的距离。即 “result=sqrt(p X-q X)*(p X-q X)+(p Y-q Y)*(p Y-q Y); ”。

展开阅读全文
相关资源
猜你喜欢
相关搜索

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

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