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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

【计算机类职业资格】二级C++-68及答案解析.doc

1、二级 C+-68及答案解析(总分:100.00,做题时间:90 分钟)一、B基本操作题/B(总题数:1,分数:30.00)1.请使用 VC6或使用答题菜单打开考生文件夹 proj1下的工程 proj1。此工程中包括类 Point、函数fun和主函数 main。程序中位于每个“/ERROR *found*”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为: The point is(0,1) The point is(3,5) 注意:只修改每个“/ERROR *found*”下的那一行,不要改动程序中的其他内容。 #include iostream using namespace st

2、d; class Point public: / ERROR *found* Point(int x = 0, int y) : x_(x), y_(y) / ERROR * found* void move(int xOff, int yOff) const x_+ = xOff; y_+ = yOff; void print() const cout “The point is (“ x_, y_ ) endl; private: int x_, y_; ; void fun (Point* p) /ERROR * found* p.print (); int main () Point

3、p1, p2 (2, 1); p1.print (); p2.move (1, 4); fun ( return 0; (分数:30.00)_二、B简单应用题/B(总题数:1,分数:30.00)2.请使用 VC6或使用答题菜单打开考生文件夹 proj2下的工程 proj2。其中的 Collection定义了集合类的操作接口。一个集合对象可以包含若干元素。工程中声明的 Array是一个表示整型数组的类,是Collection的派生类,它实现了 Collection中声明的纯虚函数。Array 的成员说明如下: 成员函数 add用于向数组的末尾添加一个元素; 成员函数 get用于获取数组中指定位置

4、的元素; 数据成员 a表示实际用于存储数据的整型数组; 数据成员 size表示数组的容量,数组中的元素个数最多不能超过 size; 数据成员 num表示当前数组中的元素个数。 请在横线处填写适当的代码,然后删除横线,以实现上述类定义。此程序的正确输出结果应为: 1,2,3,4,5,6,7,8,9,10, 注意:只在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“/*found*”。 #include iostream using namespace std; /集合类的操作接口 class Collection public: virtual void add (int e)

5、 = 0; /获取指定位置的元素 virtual int get (unsigned int i) const = 0; ; /实现了集合接口 class Array : public Collection public: Array (unsigned int s) /* found* a = new _; size = s; num: 0; Array ( ) /* found* _: virtual void add (int e) if (num size) /* found* _=e; num +; virtual int get ( unsigned int i) const if

6、 (i size) /* found* _; return 0; private: int * a; unsigned int size; unsigned int hum; ; void fun (Collection for (i = 0; i 10; i+) col.add (i+1); for (i = 0; i10; i+) cout col.get(i) “,“; cout endl; int main () Array a (0xff); fun (a); return 0; (分数:30.00)_三、B综合应用题/B(总题数:1,分数:40.00)3.请使用 VC6或使用答题菜

7、单打开考生文件夹 proj3下的工程 proj3,其中定义的 MyString类是一个用于表示字符串的类。假设字符串由英文单词组成,单词与单词之间使用一个空格作为分隔符。成员函数wordCount的功能是计算组成字符串的单词的个数。 例如,字符串“dog”由 1个单词组成;字符串“the quickbrown fox jumps over the lazy dog”由 9个单词组成。请编写成员函数 wordCount。在main函数中给出了一组测试数据,此时程序应显示: 读取输入文件. STR1=1 STR2=9 要求: 补充编制的内容写在“/*333*”与“/*666*”之间,不得修改程序的

8、其他部分。注意:程序最后将结果输出到文件 out.dat中。输出函数 WriteToFile已经编译为 obj文件,并且在本程序中调用。 /mystring.h #include iostream #include string.h using namespace std; class MyString public: MyString(const char* s) str = new charstrlen(s)+1; strcpy(str, s); MyString() delete str; int wordCount() const; private: char * str; ; voi

9、d writeToFile(char * , int); /main.cpp #include fstream #include “mystring.h“ int MyString:wordCount() const /* 333* /* 666* int main() char inname128, pathname80; strcpy(pathname, “); sprintf (inname, “in. dat“, pathname); cout “读取输入文件. /n/n“; ifstream infile (inname); if (infile.fail () cerr “打开输入

10、文件失败!“; exit(1); char buf4096; infile.getline(buf, 4096); MyString str1 (“dog“), str2 (“the quick brown fox jumps over the lazy dog“), str3 (buf); str1.wordCount (); cout “STRI = “ str1.wordCount () endl; cout “STR2 = “ str2.wordCount() endl endl; writeToFile(pathname,str3.wordCount(); return 0; (分数

11、:40.00)_二级 C+-68答案解析(总分:100.00,做题时间:90 分钟)一、B基本操作题/B(总题数:1,分数:30.00)1.请使用 VC6或使用答题菜单打开考生文件夹 proj1下的工程 proj1。此工程中包括类 Point、函数fun和主函数 main。程序中位于每个“/ERROR *found*”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为: The point is(0,1) The point is(3,5) 注意:只修改每个“/ERROR *found*”下的那一行,不要改动程序中的其他内容。 #include iostream using names

12、pace std; class Point public: / ERROR *found* Point(int x = 0, int y) : x_(x), y_(y) / ERROR * found* void move(int xOff, int yOff) const x_+ = xOff; y_+ = yOff; void print() const cout “The point is (“ x_, y_ ) endl; private: int x_, y_; ; void fun (Point* p) /ERROR * found* p.print (); int main ()

13、 Point p1, p2 (2, 1); p1.print (); p2.move (1, 4); fun ( return 0; (分数:30.00)_正确答案:(1)Point(int x=0, int y=1) (2)void move(int xOff, int yOff) (3)p-print();)解析:考点 本题考查的是 Point类,其中涉及构造函数、成员函数和 const函数。 解析 (1)主要考查考生对构造函数的掌握情况,默认构造函数的参数值必须从右到左。 (2)主要考查考生对 const函数的掌握情况,函数体中有语句:x_+=xOff;,成员变量值发生改变,因此函数不能

14、使用 const。 (3)主要考查考生对指针的掌握情况,由于 p为指针类型,因此调用成员函数时要使用标识符“-”。二、B简单应用题/B(总题数:1,分数:30.00)2.请使用 VC6或使用答题菜单打开考生文件夹 proj2下的工程 proj2。其中的 Collection定义了集合类的操作接口。一个集合对象可以包含若干元素。工程中声明的 Array是一个表示整型数组的类,是Collection的派生类,它实现了 Collection中声明的纯虚函数。Array 的成员说明如下: 成员函数 add用于向数组的末尾添加一个元素; 成员函数 get用于获取数组中指定位置的元素; 数据成员 a表示实

15、际用于存储数据的整型数组; 数据成员 size表示数组的容量,数组中的元素个数最多不能超过 size; 数据成员 num表示当前数组中的元素个数。 请在横线处填写适当的代码,然后删除横线,以实现上述类定义。此程序的正确输出结果应为: 1,2,3,4,5,6,7,8,9,10, 注意:只在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“/*found*”。 #include iostream using namespace std; /集合类的操作接口 class Collection public: virtual void add (int e) = 0; /获取指定位置的

16、元素 virtual int get (unsigned int i) const = 0; ; /实现了集合接口 class Array : public Collection public: Array (unsigned int s) /* found* a = new _; size = s; num: 0; Array ( ) /* found* _: virtual void add (int e) if (num size) /* found* _=e; num +; virtual int get ( unsigned int i) const if (i size) /* f

17、ound* _; return 0; private: int * a; unsigned int size; unsigned int hum; ; void fun (Collection for (i = 0; i 10; i+) col.add (i+1); for (i = 0; i10; i+) cout col.get(i) “,“; cout endl; int main () Array a (0xff); fun (a); return 0; (分数:30.00)_正确答案:(1)ints (2)deletea (3)anun (4)return ai)解析:考点 本题考查

18、的是 Collection类及其派生类 Array类,其中涉及纯虚函数、构造函数和析构函数。 解析 (1)主要考查考生对构造函数的掌握情况,要使用 new给动态数组分配空间。 (2)主要考查考生对析构函数的掌握情况,使用 delete释放空间。 (3)主要考查考生对成员函数的掌握情况,为数组添加元素,使用语句:aBrim=e;。 (4)主要考查考生对成员函数的掌握情况,返回数组元素。三、B综合应用题/B(总题数:1,分数:40.00)3.请使用 VC6或使用答题菜单打开考生文件夹 proj3下的工程 proj3,其中定义的 MyString类是一个用于表示字符串的类。假设字符串由英文单词组成,

19、单词与单词之间使用一个空格作为分隔符。成员函数wordCount的功能是计算组成字符串的单词的个数。 例如,字符串“dog”由 1个单词组成;字符串“the quickbrown fox jumps over the lazy dog”由 9个单词组成。请编写成员函数 wordCount。在main函数中给出了一组测试数据,此时程序应显示: 读取输入文件. STR1=1 STR2=9 要求: 补充编制的内容写在“/*333*”与“/*666*”之间,不得修改程序的其他部分。注意:程序最后将结果输出到文件 out.dat中。输出函数 WriteToFile已经编译为 obj文件,并且在本程序中调

20、用。 /mystring.h #include iostream #include string.h using namespace std; class MyString public: MyString(const char* s) str = new charstrlen(s)+1; strcpy(str, s); MyString() delete str; int wordCount() const; private: char * str; ; void writeToFile(char * , int); /main.cpp #include fstream #include “

21、mystring.h“ int MyString:wordCount() const /* 333* /* 666* int main() char inname128, pathname80; strcpy(pathname, “); sprintf (inname, “in. dat“, pathname); cout “读取输入文件. /n/n“; ifstream infile (inname); if (infile.fail () cerr “打开输入文件失败!“; exit(1); char buf4096; infile.getline(buf, 4096); MyString

22、 str1 (“dog“), str2 (“the quick brown fox jumps over the lazy dog“), str3 (buf); str1.wordCount (); cout “STRI = “ str1.wordCount () endl; cout “STR2 = “ str2.wordCount() endl endl; writeToFile(pathname,str3.wordCount(); return 0; (分数:40.00)_正确答案:(if(Str=NULL) return 0; /如字符串 str为空,返回零 int counter=1; /给 counter赋值为 1 int length=strlen(str); /把字符串 str长度赋值给 length for(int i=0; ilength; i+) /i从零到 length-1遍历 if(isspace(stri) /如果 stri为空格字符 counter+; /counter 自加1 return counter; /返回 counter;)解析:考点 本题考查的是 MyString类,其中涉及动态数组、构造函数、析构函数和 const函数。 解析 主要考查考生对动态数组的掌握情况,计算单词个数通过计算空格数目来完成。

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