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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、国家二级 C+机试(操作题)模拟试卷 328及答案与解析 一、基本操作题 1 请使用 VC6或使用【答题】菜单打开考生文件夹 projl下的工程 projl,该工程中包含程序文件 main cpp,其中有类 Clock(“时钟 ”)的定义和主函数 main的定义。程序中位于每个 “ ERROR*found*”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为: Initial times are 0 d: 0 h: 0 m: 59 s After one second times are 0 d: 0 h: 1 m: 0 s 注意:只修改每个 “ ERROR*found*”下的那一行,

2、不要改动程序中的其他内容。 #include using namespace std; class Clock public: Clock(unsigned long i=0); void set(unsigned long i=0); void print()const; void tick();时间前进一秒 Clock operator+(); private: unsigned long total_sec, seconds, minutes ,hours, days; ; Clock: Clock(unsigned long i) : total sec(i), seconds(i 6

3、0), minutes(i 60) 60), hours(i 3 600) 24), days(i 8 64 00) void Clock: set(unsigned long i) total sec=i; seconds=i 60; minutes=(i 60) 60; hours=(i 3600) 60; days=i 864 00; ERROR*found* void Clock: print() tout #include #include using namespace std; #define MaxLength i 00 class Element “元素 ”类 public:

4、 int n; Element(int i=0): n(i) ; class Queue “队列 ”类 Element * element; 指向存储元素的数组的指针 int tail;队尾元素的下标 public: Queue(): element(new Element 100), tail(一 1) 一 Queue()deleteelement; void push(Element ele); 在队列 尾端添加一个元素 Element pop(); 在队列首端删除一个元素,返回被删元素 Element front()constreturn element0; 返回队首元素,但不从队列中删

5、除该元素 *found* int size()const return (_); 返回元素个数 void show()const, 显示集合中所有元素 ; void Queue: push(Element ele) if(tail=MaxLength一 1) return;空间满,不做任何处理 *found* _; Element Queue: pop() if(Size()=0)exit(1); 队列空,不做任何处理 Element tmp=element0; for(int i=0; i using namespace std; #include”prj3 h” int FriFun(Fr

6、iFunClass X) /*333* 由于函数 FriFun()是类 FriFunclass 的友元函 数,所以它可以直接访问 a和 b *666* int main() FriFunClass n(10, 20); if(FriFun(n) tout; ”Common denominat: or iS” FriFun(n) ” n”; else cout: ”No commom denominator n”; writeToFile(”); return 0; 国家二级 C+机试(操作 题)模拟试卷 328答案与解析 一、基本操作题 1 【正确答案】 (1)void Clock: prin

7、t()const (2)set(+total_sec); (3)return*this: 【试题解析】 (1)主要考查考生对成员函数的掌握,由 Clock类中对函数 print的声明 void print()const;可知,在定义 print函数时少了 const。 (2)主要考查考生对 +操作的掌握,根据函数要求,时间要先前进一秒,再调用函数 set,因此 total_sec+应改为 +total_sec。 (3)主要考查考生对 this指针的掌握,函数要求返回值 Clock,即返回一个类,而不是指针,因此使用 *this。 二、简单应用题 2 【正确答案】 (1)tail +1 (2)e

8、lement+tail =ele (3)tail- (4)int i=0; i =tail ; i+ 【试题解析】 题意定义了 Element类,表示队列中的元素,它包含一个成员 n,表示元素的值;定义了 Queue类,表示队列,它包含两个成员: element是动态分配的一个数 组,每个元素都是 Element类型; tail表示队列尾部的下标值,指向element数组的最后一个元素,当数组为空时, tail的值为一 1,所以初始化为一1;另外 Queue类还定义了若干成员函数:构造函数为 ele ment数组动态分配100个元素空间,初始化 tail为一 1;析构函数释放 element;

9、 push()函数向队列中添加一个新元素 ele,即将形参 ele存放到数组尾部,并将 tail自增 1; pop()函数将 element数组的第一个元素 (下标为 0)从数组中删除 (采用移动后续所有元素的方式 ),并作为函数返回 值返回; front()函数返回队列首元素; size()函数返回当前element数组的元素个数; show()函数将 element数组中的元素的 n值输出,由上面的分析,补充代码如下: (1)size()函数返回 element数组的元素个数, tail的值是 element数组的最后一个元素的下标,所以返回 tail+l即可。 (2)push()函数将参

10、数 ele插入到队列的尾部,即将 ele保存到 element数组下标为 (tail+1)的位置: element+tail=ele; (3)poP()函数将 element数组的首元素保存到 tmp变量中,然后遍历 element数组,将下标从 1开始的元素逐个赋给前一个元素,再把 tail的值自减 1, tail-; (4)show()函数需要遍历 element数组,然后将元素的 n值输出,遍历下标的变量需要定义为 i, i初值从 0开始,直到 i等于最后一个元素的下标,即 tail。 int i=0;i=tail; i+ 三、综合应用题 3 【正确答案】 int min=x ax b?x a: x b; 此处为取出 x a与 x b中的最小值 for(int i=2; i=min ; i+) 从 i到 min遍历数组 if(x a i =0& x b i =0) 如 i能同时整除 x a来的 x b,则仅回 i return i; return一 1; 【试题解析】 主要考查考生对友元函数的掌握情况,友元函数可以访问类的私有数据成员,题目要求函数求出两个数据成员的大于 1的最小公因子,从 2开始往上算,因此要同时可以被两个私有成员整除,这里用取余符号完成,取余为 0即为整除。

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