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

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

1、国家二级 C+机试(操作题)模拟试卷 5及答案与解析 一、基本操作题 1 使用 VC+6 0打开考生文件夹下的源程序文件 1 cpp,该程序运行时有错,请改正程序中的错误,使程序输出的结果为 m=-10 n=-10 p=0 q=-10 z=A 注意:错误的语句在 *error*的下面,修改该语句即可。 试题程序: #include void main() double m=10: float n=10; bool p=1; int q=10; char z=a; m=-m: *error* n= n: *error* p=-p; *error* q= q0 z=z-32: cout void

2、fun(char*s1, char*s2) void main() char s1100, s2100; cout class TC public: *1* TC(int i, int j) Num1=i: Num3-=i: void Print() cout“Num1=“Num1end1; cout“Nurn2=“Num2end1; cout“Num3=“Num3end1; void Add(int i) Num3-=i: private: int Num1: const int Num2; static int Num3; *1* ; *1* void fun() TC obj(5, 9)

3、; obj Num1=-6; *1* obj Add(); obj Print(); void main() TC obj(7, 12); obj Print(); fun(); return; 国家二级 C+机试(操作题)模拟试卷 5答案与解析 一、基本操作题 1 【正确答案】 (1)“n=-n; ”。 (2)“p=!p; ”。 (3)“q=-q; ”。 【试题解析】 由题目要求的运行结果可知,第 1个标识和第 3处的语句是对变量n和 q取反,求一个正数的相反数可以通过算数运算符 “-”得到,第 1处和第 3处的语句应分别改为 “n=-n; ”和 “q=-q; ”,即只需要通过负号运算就可以

4、实现。从题目要求输出的结果来分析,第 2处的语句是对逻辑变量 p取反,对一个逻辑变量求反,应该用取反运算符 “!”,第 2处的语句应改为 “p=!p; ”。 二、简单应用题 2 【正确答案】 int i; for(i=0; s1i!=0; i+) 循环判断每一个字符 if(i 2=0) 判断字符串中下标为偶数位置 s2i=s1i; s2i+1=s1i; s2i+2= 0; 新串添加尾符 【试题解析】 判断一个字符串中的某一字符下标 i是否为偶数,可用 “i 2=0”来判断。对串 s1中各个字符串逐个进行考查,满足条件的字符就顺序放在新串 s2中,否则就不存放。所有字符处 理完成后,记得在新串

5、s2的末尾加上结束符 “0”。 三、综合应用题 3 【正确答案】 (1)“TC(int i, int j)”应改为 “TC(int i, int j): Num2(j)”。 (2)应添加 “friend void fun(); ”。 (3)应添加 “int TC: Num3=0; ”。 (4)“obj Add(); ”应改为 “obj Add(5); ”。 【试题解析】 本题考查了构造函数初始化列表、声明友元函数、初始化静态成员变量。第 1处应该添加初始化 Num2成员的语 句,由于该成员为常成员,所以只能通过初始化列表初始化。第 2处应添加将 fun函数声明为 TC类友元的语句。静态成员变量需要在类外初始化,就像定义类的成员函数一样。可以将静态成员变量看成全局变量。 Add函数需要一个 int型参数,从 Add函数的定义来看,它将增加形参 i的值。由于 main函数中先调用了一次 Print成员函数,已经输出了 3行数据,然后再调用 fun函数的,所以 fun函数中调用 Print是输出后 3行数据。Num3在第 1次输出时值为 10, fun函数中创建 obj对象时,又让其增加 1,而希望它最终的值是 16,所以 不难得知, Add()中应传入 5才能达到目的。

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

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

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