【计算机类职业资格】二级C++分类模拟136及答案解析.doc
《【计算机类职业资格】二级C++分类模拟136及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++分类模拟136及答案解析.doc(11页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+分类模拟 136 及答案解析(总分:100.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:30.00)1.请使用 VC6 或使用【答题】菜单打开 proj1 下的工程 proj1,该工程中包含程序文件 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 注意:只修改每个“/
2、ERROR *found*”下的那一行,不要改动程序中的其他内容。 #include iostream 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
3、 long i) : total_sec(i), seconds(i % 60), minutes(i/60) % 60), hours(i/3600) % 24), days(i/86400) void Clock:set (unsigned long i) total_sec = i; seconds = i % 60; minutes = (i/60) % 60; hours = (i/3600) % 60; days = i/86400; / ERROR *found* void Clock:print() cout days “d:“ hours “h:“ minutes “m:“
4、seconds “s“ endl; void Clock:tick () / ERROR *found* set (total_sec +); Clock Clock:operator +() tick(); / ERROR *found* return this; int main() Clock ck(59); cout “Initial times are“ endl; ck.print(); + ck; cout “After one second times are“ endl; ck.print(); return 0; (分数:30.00)_二、简单应用题(总题数:1,分数:30
5、.00)2.请使用 VC6 或使用【答题】菜单打开 proj2 下的工程 proj2,该工程中包含程序文件 main.cpp,其中有类 Mammal(“哺乳动物”)、类 Elephant(“大象”)、类 Mouse(“老鼠”)的定义和主函数 main 的定义。请在横线处填写适当的代码并删除横线,以实现上述定义。此程序的正确输出结果应为: ELEPHANT MOUSE 注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“/ *found*”。 #include iostream using namespace std; enum category EMPTY, ELEP
6、HANT, MOUSE; char * output = “EMPTY“, “ELEPHANT“, “MOUSE“; class Mammal public: Mammal(char * str) / *found* name = new_ strcpy(name,str); virtual char * WhoAmI() = 0; virtual Mammal() delete name; void Print() cout WhoAmI() endl; private: char * name; ; class Elephant: public Mammal public: / *foun
7、d* Elephant(char * str):_ chars * WhoAmI() return outputELEPHANT; ; class Mouse: public Mammal public: Mouse (char * str): Mammal(str) / *found* char * WhoAmI() _ ; int main() / *found* Mammal * pm = new _“Huanhuan“); pm - Print(); delete pm; pm = new Mouse (“Micky“); pm - Print(); delete pm; return
8、 0; (分数:30.00)_三、综合应用题(总题数:1,分数:40.00)3.请使用 VC6 或使用【答题】菜单打开 proj3 下的工程 proj3,其中声明了一个单向链表类sList。sList 的成员函数 Prepend 的功能是在链表头部加入一个新的元素。请编写成员函数 Prepend。在main 函数中给出了一组测试数据,此时程序的输出应为: B-A- # A- # A- # exiting inner block exiting outer block 注意:只在函数 Prepend 的“/ *333*”和“/ *666*”之间填入若干语句,不要改动程序中的其他内容。 /SLis
9、t.h struct sListItem char data; sListItem * next; ; class sList public: sList(): h(0) /0 表示空链表 sList(); void Prepend (char c); /在链表前端加入元素 void Del(); /删除链表首元素 sListItem * First() const return h; /返回链表首元素 void Print() const; /打印链表内容 void Release(); /销毁链表 private: sListItem * h; /链表头 ; void writeToFil
10、e (const char *); /main.cpp #include iostream #include “sList.h“ using namespace std; sList: sList() Release(); void sList:Prepend (char c) / *333* / *666* void sList:Del() sListItem * temp = h; h = h - next; delete temp; void sList:Print() const sListItem * temp = h; while (temp != 0) /判断是否到达链表尾部 c
11、out temp - data “-“; temp = temp - next; cout “/n#“ endl; void sList:Release() while (h != 0) Del(); int main() sList * ptr; sList obj; obj.Prepend(“A“); obj.Prepend(“B“); obj.Print(); obj.Del(); obj.Print(); ptr = ptr - Print(); cout “exiting inner block“ endl; cout “exiting outer block“ endl; writ
12、eToFile(“ “); return 0; (分数:40.00)_二级 C+分类模拟 136 答案解析(总分:100.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:30.00)1.请使用 VC6 或使用【答题】菜单打开 proj1 下的工程 proj1,该工程中包含程序文件 main.cpp,其中有类 Clock(“时钟”)的定义和主函数 main 的定义。程序中位于每个“/ ERROR *found*”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为: Initial times are 0 d:0 h:0 m:59 s After one second tim
13、es are 0 d:0 h:1 m:0 S 注意:只修改每个“/ ERROR *found*”下的那一行,不要改动程序中的其他内容。 #include iostream 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, h
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 分类 模拟 136 答案 解析 DOC
