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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

【计算机类职业资格】二级C++分类模拟123及答案解析.doc

1、二级 C+分类模拟 123 及答案解析(总分:100.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:30.00)1.请使用 VC6 或使用【答题】菜单打开 proj1 下的工程 proj1,其中有枚举 DOGCOLOR、狗类 Dog 和主函数 main 的定义。程序中位于每个“/ ERROR *found*”下的语句行有错误,请加以改正。改正后程序的输出结果应该是: There is a white dog named Hoho. There is a black dog named Haha. There is a motley dog named Hihi. 注意:只修改每

2、个“/ ERROR *found*”下的那一行,不要改动程序中的其他内容。 #include iostream using namespace std; /狗的颜色:黑、白、黄、褐、花、其他 enum DOGCOLOR BLACK, WHITE, YELLOW, BROWN, PIEBALD, OTHER; class Dog /狗类 DOGCOLOR color; char name20; static int count; public: Dog (char name, DOGCOLOR color) strcpy(this-name,name); / ERROR *found* strc

3、py (this - color, color); DOGCOLOR getColor() const return color; / ERROR *found* const char * getName() const return * name; const char * getColorString() const switch(color) case BLACK: return “black“; case WHITE: return “white“; case YELLOW: return “yellow“; case BROWN: return “brown“; case PIEBA

4、LD: return “piebald“; return “motley“; void show() const cout “There is a“ getColorString() “dog named“ name “.“ endl; ; int main() / ERROR *found* Dog dog1(“Hoho“, WHITE), dog2(“Haha“, BLACK); dog3(“Hihi“, OTHER); dog1.show(); dog2.show(); dog3.show(); return 0; (分数:30.00)_二、简单应用题(总题数:1,分数:30.00)2.

5、请使用 VC6 或使用【答题】菜单打开 proj2 下的工程 proj2,该工程中包含一个程序文件 main.cpp,其中有坐标点类 point、线段类 Line 和三角形类 Triangle 的定义,还有 main 函数的定义。程序中两点间距离的计算是按公式 实现的,三角形面积的计算是按公式 实现的,其中 (分数:30.00)_三、综合应用题(总题数:1,分数:40.00)3.请使用 VC6 或使用【答题】菜单打开 proj3 下的工程 proj3,其中声明的 DataList 类,是一个用于表示数据表的类。sort 成员函数的功能是将当前数据表中的元素升序排列。请编写这个 sort 函数。

6、程序的正确输出应为: 排序前:7,1,3,11,6,9,12,10,8,4,5,2 排序后:1,2,3,4,5,6,7,8,9,10,11,12 要求: 补充编制的内容写在“/ *333*”与“/ *666*”两行之间。不得修改程序的其他部分。 注意:程序最后将结果输出到文件 out.dat 中。输出函数 writeToFile 已经编译为 obj 文件,并且在本程序调用。 /DataList.h #include iostream using namespace std; class DataList /数据表类 int len; double * d; public: DataList(i

7、nt len, double data = NULL); DataList() deleted; int length() const return len; /数据表长度(即数据元素的个数) double getElement (int i) const return di; void sort(); /数据表排序 void show() const; /显示数据表 ; void writeToFile (char *, const DataList /main.cpp #include “DataList.h“ DataList:DataList (int len, double data

8、):len(len) d = new doublelen; for(int i = 0; i len; i+) di = (data = NULL? 0.0:datai); void DataList:sort() /数据表排序 / *333* / *666* void DataList:show() const /显示数据表 for (int i = 0; i len - 1; i+) cout di “,“; cout dlen - 1 endl; int main() double s = 7,1,3,11,6,9,12,10,8,4,5,2; DataList list(12,s);

9、cout “排序前:“; list.show(); list.sort(); cout endl “排序后:“; list.show(); writeToFile(“ “, list); return 0; (分数:40.00)_二级 C+分类模拟 123 答案解析(总分:100.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:30.00)1.请使用 VC6 或使用【答题】菜单打开 proj1 下的工程 proj1,其中有枚举 DOGCOLOR、狗类 Dog 和主函数 main 的定义。程序中位于每个“/ ERROR *found*”下的语句行有错误,请加以改正。改正后程序的输出

10、结果应该是: There is a white dog named Hoho. There is a black dog named Haha. There is a motley dog named Hihi. 注意:只修改每个“/ ERROR *found*”下的那一行,不要改动程序中的其他内容。 #include iostream using namespace std; /狗的颜色:黑、白、黄、褐、花、其他 enum DOGCOLOR BLACK, WHITE, YELLOW, BROWN, PIEBALD, OTHER; class Dog /狗类 DOGCOLOR color; c

11、har name20; static int count; public: Dog (char name, DOGCOLOR color) strcpy(this-name,name); / ERROR *found* strcpy (this - color, color); DOGCOLOR getColor() const return color; / ERROR *found* const char * getName() const return * name; const char * getColorString() const switch(color) case BLACK

12、 return “black“; case WHITE: return “white“; case YELLOW: return “yellow“; case BROWN: return “brown“; case PIEBALD: return “piebald“; return “motley“; void show() const cout “There is a“ getColorString() “dog named“ name “.“ endl; ; int main() / ERROR *found* Dog dog1(“Hoho“, WHITE), dog2(“Haha“,

13、BLACK); dog3(“Hihi“, OTHER); dog1.show(); dog2.show(); dog3.show(); return 0; (分数:30.00)_正确答案:()解析:(1)this-color=color; (2)const char getName() const return*name; (3)Dog dog1(“Hoho“,WHITE),dog2(“Haha“,BLACK),dog3(“Hihi“,OTHER); 答案考生文件夹 考点 主要考查的是 Dog 类,其中涉及 enum、静态私有成员、const 函数和构造函数。strcpy 函数用来复制字符串,

14、而对 double、int 等类型直接用“=”赋值即可。定义同一类型的变量时,几个变量之间用“,”分开。 解析 (1)主要考查考生对 strcpy 函数的掌握,如果看到上一条语句 strcpy(this-name,name);,就以为本条语句也要用 strcpy 函数来赋值,这是错误的。Strcpy 函数只能复制字符串,根据类的私有成员声明可知,color 是 DOGCOLOR 型的,这里直接使用赋值语句“=”即可。 (2)主要考查考生对函数返回值的掌握,先解读语句 const char*getName() const return*name;,要返回的是一个 const 的字符指针,同时函数

15、内的值不能改变,name 在类的私有成员声明中是个字符数组,*name 代表字符数组而不是字符指针,问题就出来了,需要修改返回类型:const char getName() const return*name;。 (3)语法错误,定义变量时,变量之间应使用“,”分开。二、简单应用题(总题数:1,分数:30.00)2.请使用 VC6 或使用【答题】菜单打开 proj2 下的工程 proj2,该工程中包含一个程序文件 main.cpp,其中有坐标点类 point、线段类 Line 和三角形类 Triangle 的定义,还有 main 函数的定义。程序中两点间距离的计算是按公式 实现的,三角形面积的

16、计算是按公式 实现的,其中 (分数:30.00)_正确答案:()解析:(1)const Point class DataList /数据表类 int len; double * d; public: DataList(int len, double data = NULL); DataList() deleted; int length() const return len; /数据表长度(即数据元素的个数) double getElement (int i) const return di; void sort(); /数据表排序 void show() const; /显示数据表 ; vo

17、id writeToFile (char *, const DataList /main.cpp #include “DataList.h“ DataList:DataList (int len, double data):len(len) d = new doublelen; for(int i = 0; i len; i+) di = (data = NULL? 0.0:datai); void DataList:sort() /数据表排序 / *333* / *666* void DataList:show() const /显示数据表 for (int i = 0; i len - 1

18、 i+) cout di “,“; cout dlen - 1 endl; int main() double s = 7,1,3,11,6,9,12,10,8,4,5,2; DataList list(12,s); cout “排序前:“; list.show(); list.sort(); cout endl “排序后:“; list.show(); writeToFile(“ “, list); return 0; (分数:40.00)_正确答案:()解析:for(int i = 0; i len; +i) /从头遍历数组 d for(int j = i; j len; +j) /从

19、i+1 处遍历数组 d if(di dj) /di和j比较人,如果大于,就 dj和 dj值交换 int temp = di; /把临时整型变量 temp 赋值为 di di = dj; /把 dj赋值给 di dj = temp; /把 temp 赋值给 dj 答案考生文件夹 考点 主要考查的是 DataList 类,其中涉及动态数组、构造函数、析构函数、const函数和排序算法。Sort 函数是一个排序函数,对于排序可以使用的方法很多,考生只需要使用自己最擅长的方法即可,题目并没有指定考生使用哪种方法。 解析 本题使用最简单的冒泡排序算法,首先明确要排序的动态数组 d,其长度为 len,在此可以使用两个下标 i 和 j 相比较,当 didj时,数组内的值利用中间变量 temp 进行交换。

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