1、国家二级 C+机试(操作题)模拟试卷 352及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.使用 VC6打开考生文件夹下的源程序文件 modilcpp,但该程序运行时有错,请改正程序中的链误,使程序输出的结果为: Number=7 Number=12 注意:错误的语句在*error*的下面,修改该语句即可。 #include class CMyClass public: *error* CMyClass(int i):Number=i *error* return Number; void Set(int i) Number=i; void d
2、isplay() coutset(12); P 一display(); return; (分数:2.00)_二、简单应用题(总题数:1,分数:2.00)2.使用 VC6打开考生文件夹下的源程序文件 modi2cpp。阅读下列函数说明和代码。函数 func(intd,int n)的功能是将长度为 num的数组 d的每一个数字是奇数的扩大 1倍,并存储到数组 d中。 例如:1 2 3 4 5 6 7 8 9 返回:2 2 6 4 l 0 6 14 8 18 将 func(int d,int num)补充完整。 注意:请勿改动主函数。#includeiostreamhvoid func(int d,
3、int num)int main() int Data=1,2,3,4,5,6,7,8,9); func(Data,9); for(int i=0;isizeof(Data)SiZeof(int); i+) coutDatai; coutendl; return 0;(分数:2.00)_三、综合应用题(总题数:1,分数:2.00)3.使用 VC6打开考生文件夹下的源程序文件 modi3cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)完成默认构造函数 TestClass的定义,使得 TestClass对象的类型为 int,默认值为 a=0,b=0,c=0,请在注释*
4、1*后添加适当的语句。 (2)定义类的私有成员变量,X、Y、Z 类型为 int,请在注释*2*后添加适当的语句。 (3)定义类 TestClass的数据成员 count声明为静态整数型数据成员, 请在注释*3*后添加适当的语句。 (4)在构造函数中实现用 count表示类 TestClass被实现对象的次数。请在注释*4*后添加适当的语句。 本程序的输出结果为: The point is(1,1,1) There are 3 point objects The point is(1,2,3) There are 3 point objects The point is(0,0,0) There
5、 are 3 point objects 注意:除在指定的位置添加语句之外,请不要改动程序的其他部分。 #include using namespace std; C1ass TestClass public: *1* X=a; Y=b; Z=c; *4* void Display() coutset(12); P 一display(); return; (分数:2.00)_正确答案:(正确答案:(1)CMyClass(int i):Number(i) (2)应删除:return Number; (3)CMyClass*P=new CMyClasS(7);)解析:解析:CMyClass 类含有
6、成员变量 Number和多个成员函数,set(int i)函数可改变成员变量的值,display()函数在屏幕上打印成员变量的值。二、简单应用题(总题数:1,分数:2.00)2.使用 VC6打开考生文件夹下的源程序文件 modi2cpp。阅读下列函数说明和代码。函数 func(intd,int n)的功能是将长度为 num的数组 d的每一个数字是奇数的扩大 1倍,并存储到数组 d中。 例如:1 2 3 4 5 6 7 8 9 返回:2 2 6 4 l 0 6 14 8 18 将 func(int d,int num)补充完整。 注意:请勿改动主函数。#includeiostreamhvoid
7、func(int d,int num)int main() int Data=1,2,3,4,5,6,7,8,9); func(Data,9); for(int i=0;isizeof(Data)SiZeof(int); i+) coutDatai; coutendl; return 0;(分数:2.00)_正确答案:(正确答案:for(int i=0;i解析:解析:函数 func(int d,int n)功能是将长度为 num的数组 d的每一个数字是奇数的扩大 1倍,并存储到数组 d中,因此可利用循环来查找该数组,如果该元素为奇数则变为原来的两倍。三、综合应用题(总题数:1,分数:2.00)
8、3.使用 VC6打开考生文件夹下的源程序文件 modi3cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)完成默认构造函数 TestClass的定义,使得 TestClass对象的类型为 int,默认值为 a=0,b=0,c=0,请在注释*1*后添加适当的语句。 (2)定义类的私有成员变量,X、Y、Z 类型为 int,请在注释*2*后添加适当的语句。 (3)定义类 TestClass的数据成员 count声明为静态整数型数据成员, 请在注释*3*后添加适当的语句。 (4)在构造函数中实现用 count表示类 TestClass被实现对象的次数。请在注释*4*后添加适
9、当的语句。 本程序的输出结果为: The point is(1,1,1) There are 3 point objects The point is(1,2,3) There are 3 point objects The point is(0,0,0) There are 3 point objects 注意:除在指定的位置添加语句之外,请不要改动程序的其他部分。 #include using namespace std; C1ass TestClass public: *1* X=a; Y=b; Z=c; *4* void Display() coutX,Y,Z count “point
10、 obj ect s” endl; private: *2* *3* ; int TestClass:count=0; int main() TestClas s pl(1,1,1),p2(1,2,3),p3(0,0,0); p1mi splay(); p2Di splay(); P3Di splay(); return 0; (分数:2.00)_正确答案:(正确答案:(1)添加语句: Testclas s(int a=0,int b=0,int c=0) (2)添加语句:int x,y,z; (3)添加语句:static int count; (4)添加语句:count+;)解析:解析:本题的功能是设置点,并将点的坐标值显示在屏幕上。在 VC环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从己定源程序的 main主函数开始入手,可以看出程序通过调用类 TestClass和成员函数实现各种输出操作。
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1