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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、国家二级 C+机试(操作题)模拟试卷 303及答案与解析 一、基本操作题 1 请使用 VC6或使用【答题】菜单打开考生文件夹 proj1下的工程 proj1,其中在编辑窗口内显示的主程序文件中定义有类 AAA和主函数 main。程序文本中位于每行 “ ERROR *found*”下面的一行有错误,请加以改正。改正后程序的输出结果应该是: *found*”下面的一行有错误,请加以改正。改正后程序的输出结果应该是: sum 60 注意:只修改每个 “ ERROR *found*”下面的一行,不要改动程序中的其他任何内容。 #include iostream using namespace std;

2、 class AAA int a10; int n; ERROR *found* private: AAA(int aa, int nn): n(nn) ERROR *found* for(int i 0, i n, i )aai ai; int Geta(int i) return ai; ; int main() int a6 2, 5, 8, 10, 15, 20; AAA x(a, 6; int sum 0; ERROR *found* for(int i 0; i 6; i ) sum x ai; cout “sum “ sum end1; return 0; 二、简单应用题 2 请

3、使用 VC6或使用【答题】菜单打开考生文件夹 proj2下的工程 proj2,该工程中含有一个源程序文件 proj2 cpp。其中定义了类 Set和用于测试该类的主函数main。类 Set是一个用于描述字符集合的类,在该字符集合中,元素不能重复 (将“a”和 “A”视为不同元素 ),元素最大个数为 100。为该类实现一个构造函数Set(char*s),它用一个字符串来构造一个集合对象,当字符串中出现重复字符时,只放入一个字符。此外,还要为该类实现另一个成员函数 InSet(char c),用于测试一个字符 c是否在一个集合中,若在,则返回 true;否则返回 false。 构造函数 Set和成

4、员函数 InSet的部分实现代码已在文件 proj2 cpp中给出,请在标有注释 “ TODO: ”的行中添加适当的代码,将这两个函数补充完整,以实现其功能。 提示:在实现构造函数时,可以调用 InSet函数来判断一个字符是否已经在集合中。 注意:只在指定位置编写适当代码,不要改动程序中的其他内容,也不要删除或移动 “ *found*” proj2 cpp #include iostram using namespace std; const int MAXNUM 100; class set private: int num; 元素个数 char setdataNAXNUN; 字符数组,用于

5、存储集合元素 public: Set(char *s); 构造函数,用字符串 s构造一个集合对象 bool InSet(char c); 判断一个字符 c是否在集合中,若在,返回 true,否则返回 false void Print () const; 输出集合中所有元素 , Set Set(char * s) num 0; while(*s) *found* if(_) TODO:添加代码,测试元素在集合中不存在 *found*_; TODO:添加一条语句,加入元素至集合中 s; bool Set InSet(char c) for(int i 0; i num; i ) *found* i

6、f(_) TODO:添加代码,测试元素 C是否与集合中某元 素相同 *found* _; TODO:添加一条语句,进行相应处理 return false; void Set Print()const cout “Set elements: “ end1; for(int i 0; i num; i ) cout setdatai “; cout end1; int main() char sMAXNUM; cin getline(s, MAXNUM 1); 从标准输入中读入一行 Set setobj(s); 构造对象 setobj setobj Print(); 显示对象 setobj中内容

7、return 0; 三、综合应用题 3 请使用 VC6或使用【答题】菜单打开考生文件夹 proj3下的工程 proj3,其中声明了 MiniComplex是一个用于表示复数的类。请编写这个 operator运算符函数,以实现复数的求和运算。两个复数的和是指这样一个复数 :其实部等于两个复数的实部之和,其虚部等于两个复数的虚部之和。例如, (23 34i) (56 35i)等于 (79 69i)。 要求: 补充编制的内容写在 “ *333*”与 “ *666*”之间,不得修改程序的其他部分。 注意:程序最后将结果输出到文件 out dat中。输出函数 writeToFile已经编译为 obj文件

8、,并且在本程序中调用。 Minicomplex h #include iostream using namespace std; class MiniComplex复数类 public: 重载流插入和提取运算符 friend ostream&operator (ostream& osObj ect, const MiniComplex&complex) osObject “(“ complex realPart “ “ complex imagPart “i“ “)“; return osObject; friend istream&operator (istream&isObj ect, M

9、iniComplex&complex) char ch; isObj ect complex realPart ch complex imagPart ch; return isObj ect; MiniComplex(double real 0, double imag 0);构造函数 MiniComplex operator (const MiniComplex&otherComplex)const;重载运算符 private: double realPart;存储实部变量 double imagPart;存储虚部变量 ; void writeToFile(char*); main cpp

10、 #include“MiniComplex h“ MiniComplex MiniComplex(double real, double imag)realPart real; imagPartimag; MiniComplex MiniComplex operator (const MiniComplex&otherComplex)const *333* *666* int main() void writeToFile(char * ); MiniComplex numl(23, 34), num2(56, 35); cout “Initial Value of Numl “ num1 “

11、 nInitial Value of Num2 “num2 end1; cout num1 “ “ num2 “ “ num1 num2 end1;使用重栽的加号运算符 writeToFile(“); return 0; 国家二级 C+机试(操作题)模拟试卷 303答案与解析 一、基本操作题 1 【正确答案】 (1)public: (2)for(int i 0; i n; i )ai aai; (3)for(int i 0; i 6; i )sum x Geta(i); 二、简单应用 题 2 【正确答案】 (1)!InSet(*s) (2)setdatanum *s (3)e setdatai

12、 (4)return true 【试题解析】 (1)主要考查考生对成员函数的掌握,题目要求:添加代码,测试元素在集合中不存在,由类的定义可知函数 bool InSet(char C)可以测试字符 c是否在集合中,因此这里直接调用函数 bool InSet(char c)即可。 (2)题目要求:添加一条语句,加入元素至集合中,集合用数组 setdata表 示,直接把元素添加到数组中即可。 (3)主要考查考生对 if语句的掌握,题目要求:测试元素 c是否与集合中某元素相同。前一条语句是个 for循环,利用下标 i遍历整个集合,通过 if语句中的判断条件判断 c是否在集合中,用 “ ”判断。 (4)

13、主要考查考生对成员函数的掌握,先看函数的注释:判断一个字符 C是否在集合中,若在,返回 true,否则返回 false。 if语句成立时,说明字符 c存在于集合中,因此应该返回 true。 三、综合应用题 3 【正确答案】 MiniComplex sum;定义复数对 象 sum sum imagPart this imagPart otherComplex imagPart; 把 this中的虚部 (this imagPart)和 othercomplex虚部相加赋值给 Sum虚部 sum realPart this realPart otherComplex realPart; 把 this中的实部 (this reapart)加上 othercomplex实部赋值给 Sum实部 return sum; 返回对象 Sum 【试题解析】 主要考查考生对运算符重 载的掌握,题目要求编写 operater运算符函数,以实现复数的求和与运算。复数的和的实部等于两个复数的实部之和,虚部等于两个复数的虚部之和。函数要返回的类型是 MiniComplex,因此要先定义一个 MiniComplex类型变量 sum,然后对它们的实部和虚部各自求和,返回sum即可。

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