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

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

1、国家二级 C+机试(操作题)模拟试卷 432及答案与解析 一、基本操作题 1 使用 VC6打开考生文件夹下的源程序文件 modil cpp,该程序运行时有错,请改正其中的错误,使程序正确运行,并且使程序输出的结果为: 30 130 注意:错误的语句在 *error*的下面,修改该语句即可。 #include int a=10; class CObj public: CObj() a=b=0; void display() *error* cout int num(char *str) int main() char str1024; cout #define MAX_LENGTH 500 cl

2、ass CArray public: CArray() *1* int AddMember(int n) for(int i=0; ia+=a; (3)a+=: a; 【试题解析】 (1)成员函数 display()打印变量 a和 b的值,即 cout输出 a和 b的值, cout流中的数据是用流插入运算符 “a+=a; ”。 (3)func2()函数虽然没有参数,但是成员变量 a和全局变量 a重名,第 3个标识下“a+=a”也会有歧义,分不清楚是全局变量加倍还是类成员变量加倍或者其他情况,调用 func2()函数后,输出 “130”,说明 a为 13, b为 0,因此是成员变量与全局变量 a

3、的和赋给成员变量 a,正确的写法是 “a+=: a; ”, “: a”表示是全局变量 a。 二、简单应用题 2 【正确答案】 int number=0; for(int i=0; stri! =0; i+) if(Stri9 stri9stri0”的字符为非数字字符,非 数字字符个数加 1,循环结束就得到了非数字字符的个数。 三、综合应用题 3 【正确答案】 (1)添加语句: length=0; (2)将 “if(Arrayi=n)”补充完整为: if(Arrayi=n)或 if(n=Arrayi) (3)将 “if()”补充完整为: if(ilength)或 if(i!: length) (

4、4)将 “if()”补充完整为: if(Arrayi=n)或 if(n=Arrayi) 【试题解析】 (1)使 length的初始化为 0,因此添加语句: “length=0; ” (2)第 2个标识下是检查 n是否已经在数组当中存在,用 if语句来判断,即if(Arrayi=n)或 if(n=Arrayi)。 (3)DelMember(int n)函数删除指定的元素,由于元素在数组当中的位置未知,因此必须先查找该元素的位置,在该函数的实现过程当中通过 for循环来完成,即第一个 for循环查找 n在数组中的位置。如果 n存在于数组中,那么 if中的 break语句就会执行跳出循环,此时循环变量 i的值会小于 length,即通过判断 i的值是否小于 length值可以知道 n是否存在数组中,如 果存在数组中接下来进行删除操作。即第 3个标识下应改为 if(ilength)或 if(i! =length)。 (4)islnclude(int n)成员函数用来判断 n是否存在数组当中,可用 if语句比较,即第4个标识下应改为 “if(Arrayi=n)或 if(n=Arrayi)”。

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

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

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