1、国家二级 C+机试(操作题)模拟试卷 55及答案与解析 一、基本操作题 1 使用 VC6打开考生文件夹下的源程序文件 modil cpp,但该程序运行时有错,请改正程序中的错误,使该程序的输出结果为: 100 注意:错误的语句在 *error*的下面,修改该语句即可。 1 #include 2 statiC int x=50; 3 int t=0 ; 4 int *func(int x, int y, int z) s 6 t=t+x+y+Z; 7 *error* 8 return t; 9 ; 10 void main() 11 12 int y=3 0; 13 int x=10: 。 14
2、 int z=20 ; 15 *error* 16 X=X; 17 *error* 18 cout 2 int fun(char*S, int a) 3 4 5 6 int main() 7 8 int a1024; 9 int len=fun(“1234abcdef567“, a); 10 for(int i=0; i 2 ClaSS TestClasS 3 4 publiC: s *1* 6 7 TestClasS(int i, int J) 8 9 m_Numl=i ; i0 m_Num3+=i ; 11 12 VOid Print() 13 14 cout=0&si类名 class:参
3、数 =”,其中 为要初始化参数的类型, “: ”为作用域符号,说明参数是 class中的参数,所以这里补全 “int TestClass: m_Num3=0; ”。 (4)函数 fun()中 “Num Add(); ”语句应该是调用类 “TestClass”中的成员函数“void Add(int i)”。其定义中存在参数 int i,所以注释下修改的语句缺少参数。 主函数首先调用 “Num Print(); ”,即实现题目中输出的前三条语句,而“fun(); ”语句实现后面三条语句的输出,即 “m Num3=7”才是调用 Num Add的输出结果,即 “m Num3+=i; ”的计算结果。 “TestClass Num(1, 2); ”中将 i的值初始化为 1, “m Num3”的值在上一次 “Num Print(); ”调用中为 1,如果计算结果 为 7,那么 Add(int i)中 i的初始化值为 5,即 “Num Add(5); ”。