ImageVerifierCode 换一换
格式:DOC , 页数:3 ,大小:33.50KB ,
资源ID:1331751      下载积分:5000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-1331751.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(【计算机类职业资格】国家二级C++机试(操作题)-试卷32及答案解析.doc)为本站会员(livefirmly316)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

【计算机类职业资格】国家二级C++机试(操作题)-试卷32及答案解析.doc

1、国家二级 C+机试(操作题)-试卷 32 及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.使用 VC6 打开考生文件夹下的源程序文件 modilcpp,该程序运行时有错误,请改正程序中的错误。本程序要求实现的功能为:从键盘输入一个字符串,并将结果保存到文件 modiltxt 中。 注意:不要改动 main 函数,不能增行或删行,也不能更改程序的结构,错误的语句在*error*的下面。#include #include *error* using std; void WriteFile(char*S) ofstream outl; *error*

2、 outlopen(”modiltxt”, binaryf app); for(int i=0;Si!=0 ; i+) *error* outlputs(Si); outlclose(); ) void ClearFile() ofstream outl ; outlopen(”modiltxt”); outlclose(); int main() char S1024; ClearFile(); cout_二、简单应用题(总题数:1,分数:2.00)2.使用 VC6 打开考生文件夹下的源程序文件 modi2epp。阅读下列函数说明和代码,补充空出的代码。函数 IsPalindromes(ch

3、a*string)实现的功能是判定给定的字符串是否构成回文字符串,如果是则返回1,否则返回 0。 如:1234554321 或者 1234321 都认为是回文字符串。 如果串为空或一个字母时,均认为是回文字符串。 注意:不能修改程序的其他部分,只能补充 IsPalindromes()函数。 #include #define MAXLEN 1024 bool IsPalindromes(char*string) void main() char strMAXLEN; cout“请输入行文字“_三、综合应用题(总题数:1,分数:2.00)3.使用 VC6 打开考生文件夹下的源程序文件 modi3c

4、pp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)基类 Person 完成打印功能,定义其中的打印函数为虚函数,请在注释*error*后添加适当的语句。 (2)类 Man 继承于 Person,在构造函数中设置性别为 1,请在注释*error*后添加适当的语句。 (3)类 Woman 继承于 Person,在构造函数中设置性别为 0,请在注释*error*后添加适当的语句。 (4)实现函数 fun(),用于传递不同的类型,打印出性别,请在注释*error*后添加适当的语句。 输出的内容如下: Sex=Man Sex=Woman 注意:除在指定位置添加语句

5、之外,请不要改动程序中的其他内容。 #include C1ass Person public: *1* void print(); int sex; ; class Man:public Person public: Man() *2* void print() cout”Man”“Woman”_国家二级 C+机试(操作题)-试卷 32 答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.使用 VC6 打开考生文件夹下的源程序文件 modilcpp,该程序运行时有错误,请改正程序中的错误。本程序要求实现的功能为:从键盘输入一个字符串,并将结果保存到文

6、件 modiltxt 中。 注意:不要改动 main 函数,不能增行或删行,也不能更改程序的结构,错误的语句在*error*的下面。#include #include *error* using std; void WriteFile(char*S) ofstream outl; *error* outlopen(”modiltxt”, binaryf app); for(int i=0;Si!=0 ; i+) *error* outlputs(Si); outlclose(); ) void ClearFile() ofstream outl ; outlopen(”modiltxt”);

7、outlclose(); int main() char S1024; ClearFile(); cout_正确答案:(正确答案:(1)using namespace std; (2) out1open(“modiltxt”, ios:binary ios:app); (3)outlput(si);)解析:解析:程序要求从键盘输入一个字符串,并将结果保存到文件 modiltxt 中。从已给定源程序的main 主函数开始入手,main 主函数首先调用 ClearFile 函数打开文件,然后调用 WriteFile 函数将字符串写入文件。 解题思路 (1)第 1 个标识下的“using std;”

8、是在程序中引入标准命名空间 std,对于C+中引入标准命名空间的格式,缺少 namespace,所以第 1 个标识下的语句修改为“using namespace std;”。 (2)第 2 个标识下,调用成员函数 open 中,输入输出方式是在 ios 类中定义的,所以“outlopen(”modiltxt”,binarylapp);”语句缺少类 ios,即第 2 个标识下的语句修改为“out1open(”modiltxt”,ios:binarylios:app);”。 (3)第 3 个标识应该用流成员函数put 输出字符,所以第 3 个标识下的语句修改为“outlput(si);”。二、简单

9、应用题(总题数:1,分数:2.00)2.使用 VC6 打开考生文件夹下的源程序文件 modi2epp。阅读下列函数说明和代码,补充空出的代码。函数 IsPalindromes(cha*string)实现的功能是判定给定的字符串是否构成回文字符串,如果是则返回1,否则返回 0。 如:1234554321 或者 1234321 都认为是回文字符串。 如果串为空或一个字母时,均认为是回文字符串。 注意:不能修改程序的其他部分,只能补充 IsPalindromes()函数。 #include #define MAXLEN 1024 bool IsPalindromes(char*string) voi

10、d main() char strMAXLEN; cout“请输入行文字“_正确答案:(正确答案:int len=0 ; for(;stringlen!=NULL; len+) 获取字符串的长度 ; fen 一一; 下标从 0 开始到 len 一 1 for(int i=0 ; ilen; i+,len-一) 第一个和最后一个比较,第二个和倒数第二个比较 if( stringi != string 1en)不等说明不同,返回 0 return 0 ; return 1;)解析:解析:(1)由于字符串的长度是未知的,先利用循环求出字符串的长度,循环变量从 0 开始,直到数组的结束,stringl

11、en=NUL 为循环结束条件,如此便得到了数组的长度 len。 (2)知道长度后就可以判断对称位置的元素是否相同,比如第一个元素和最后一个元素,第二个元素和倒数第二个元素,如此比较下去直到到了最中间的元素为止。 (3)可以利用循环来比较是否对称,设置另一个循环变量 i,i 从 0开始表示从数组的头开始读数,len 从数组的尾部开始读数,如果 stringi!=stringlen,则跳出循环返回 0,如果循环结束还没发现不同则返回 1。三、综合应用题(总题数:1,分数:2.00)3.使用 VC6 打开考生文件夹下的源程序文件 modi3cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义

12、补充完整。完成以下功能: (1)基类 Person 完成打印功能,定义其中的打印函数为虚函数,请在注释*error*后添加适当的语句。 (2)类 Man 继承于 Person,在构造函数中设置性别为 1,请在注释*error*后添加适当的语句。 (3)类 Woman 继承于 Person,在构造函数中设置性别为 0,请在注释*error*后添加适当的语句。 (4)实现函数 fun(),用于传递不同的类型,打印出性别,请在注释*error*后添加适当的语句。 输出的内容如下: Sex=Man Sex=Woman 注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。 #include C1

13、ass Person public: *1* void print(); int sex; ; class Man:public Person public: Man() *2* void print() cout”Man”“Woman”_正确答案:(正确答案:(1)将“viid print(;”补充完整为:Virtual void print(); (2)添加语句:sex=1; (3)添加语句:sex=0; (4)添加语句:void fun(Person&p)解析:解析:在 VC 环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已定源程序的 main 主

14、函数开始入手,可以看出程序通过调用类的成员函数实现各种输出操作。 解题思路 (1)题目 1 要求“基类 Person 完成打印功能,定义其中的打印函数为虚函数”。虚函数是函数的一种,定义虚函数,在函数名前声明 virtual 就可以了,所以第 1 个标识下的“void print(); ”语句修改为“virtual void print();”。 (2)题目 2 要求“类 Man 继承于 Person,在构造函数中设置性别为 1”。基类 Person 中变量 sex 是用来存放性别的,Man 继承 Person,所以 Man 中性别的变量可以使用基类中的 sex 变量,设置性别为 1,即“sex=1;”。 (3)题目 3 要求“类 Woman 继承于Person,在构造函数中设置性别为 0”。同(2),在第三个标识下添加“sex=0;”。 (4)题目 4 要求“实现函数 fun0,用于传递不同的类型,打印出性别”。根据“pprintO;”语句知道,fun()函数的形参为指针 p,由于它调用了基类 Person 中的成员函数 print(),所以 p 的基类为 Person,即添加函数 fun()的定义为“void fun(Person&p)”。

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