1、国家二级 C+机试(操作题)模拟试卷 362及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.使用 VC6打开考生文件夹下的源程序文件 modilcpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为: init TestClass del TIestClass 注意:不要改动 main函数,不能增行或删行,也不能更改程序的结构, 错误的语句在*error*的下面。 #include class TestClass *error* *error* int TestClass()cout“initTestClass”“d
2、e1TestClass”_二、简单应用题(总题数:1,分数:2.00)2.使用 VC6打开考生文件夹下的源程序文件 modi2cpp。阅读下列函数说明和代码。函数 num(char*str)实现返回字符串中非数字的个数。 例如:abcl23abc45 返回输出:6 将函数 num()补充完整。 注意:请勿改动主函数。 #include int num(char*str) int main() char str1 02 4; coutnum(Str)_三、综合应用题(总题数:1,分数:2.00)3.使用 VC6打开考生文件夹下的源程序文件 modi3cpp。其中定义的类并不完整,按要求完成下列操
3、作,将类的定义补充完整。完成以下功能: (1)利用 define定义常量 TRUE为 1,定义常量 FALSE为 0,请在注释*1*后添加适当的语句。 (2)在类 A2前增加 A1的声明,请在注释*2*后添加适当的语句。 (3)在类 C1中声明友元函数 bool func(A2 bool func(A2 bool func(A2&obj 1,A1obj 2) *4* return int main() A2 obj 0; A1 obj 1; cout_正确答案:(正确答案:(1)添加语句:#define TRUE 1 (2)添加语句:class A1; (3)添加语句:friend bool func(A2obj 1,A1obj 2); (4)将“return”补充完整为:return obj1mA2=TRUEobj 2m_A1=TRUE;)解析:解析:程序当中定义了两个类,每个类中具有一个 bool型成员变量, 函数 func(A2&ob1,A1aobj2)功能是检查这两个类的成员变量值是否都为 TRUE,如果均为 TRUE返回真,否则返回 FALSE,相当于一个逻辑与运算。