1、国家二级 C+机试(操作题)模拟试卷 57及答案与解析 一、基本操作题 1 使用 VC6打开考生文件夹下的源程序文件 modil cpp,请修改程序中的错误,使程序能得出正确的结果: num: 0 num: 1 num: 10 注意:不要改动 main函数,不能增行或删行,也不能更改程序的结构,错误的语句在 *error*的下面。 1 #include 2 int i=10 ; 3 C1ass TestClass 4 5 public: 6 TestClass(int i) 7 8 cout 2 #define MAXNLEN 100 3 void factor(int*des, int&le
2、ngth, int n) 4 5 6 7 void main() 8 9 int aMAXNLEN, length ; 10 int n=20; 11 factor(a, length, n); 12 for(int i=0, i 2 class CMyClass 3 4 public: 5 *1* 6 CMyClass(int i, int j) 7 8 Numberl=i; 9 Number3+=i; 10 1i void display() 12 13 couti=i+1 ;或 TestClasS: i=i+1;或 (*this) i=i+1; (2)TestClass print(0)
3、; (3)couti=i+l; ”或 “TestClass: i=i+1; ”或“(*this) i=i+l; ”。 (3)主函数中通过 “cout: =,因此第 3个标识下应为 “int CMyClass: Number3=4; ”0 (4)成员函数 AddNum()带有一个整型参数,因此调用此函数时必须有参数传入,可由程序运行结果分析得知传入的参数值的大小。在 fun()函数内,定义CMyClass obj(1, 2)后, obj Numberl=l, obj Number2=2,Number3=16+1=17, obj Numberl=4, Number1为 4, obj Number2为常成员其值不会改 变,调用 AddNum0函数后调用显示函数显示成员变量值,可知Number3为 19,因此 AddNum0的参数为 19 17=2,即第 4个标识下应为“obj AddNum(2); ”