欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

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

    • 资源ID:1324308       资源大小:37KB        全文页数:7页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

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

    1、二级 C+机试-129 及答案解析(总分:100.00,做题时间:90 分钟)一、1基本操作题(总题数: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.注意:只能修改每个/ERRO

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

    3、 getColor() const return color;/ERROR*found*const char*getName() const return*name;const char*getColorString() constswitch(color)case BLACK: return“black“;case WHITE: return“white“;case YELLOW: return“yellow“;case BROWN: return“brown“;case PIEBAIJD: return“piebald“;return“motley“;void show() const c

    4、out“There is a“getColorString()“dog named“name.endl;;int main()/ERROR*found*Dog dog1(“Hoho“,WHITE),dog2(“Haha“,BLACK); dog3(“Hihi“,OTHER);dog1show();dog2.show();dog3.show();return 0:(分数:30.00)_二、2简单应用题(总题数:1,分数:40.00)2.请使用“答题”菜单或使用 VC6 打开考生文件夹 proj2 下的工程 proj2,函数 void Insert(node*q)使程序能够完成如下功能:从键盘输入

    5、一行字符,调用该函数建立反序的无头结点的单链表,然后输出整个链表。注意:请勿修改主函数 main 和其他函数中的任何内容,只需在画线处编写适当代码,也不能删除或移动/*found*。/源程序 proj2.cpp#includeiostreamusing namespace std;struct nodechar data;node*link:*head; /链表首指针void Insert(node*q) /将节点插入链表首部/*found*_;head=q;int main()char ch;node *p;head=NULL:cout“Please input the string“end

    6、l;while(ch=cin.get()!=/n)/*found*_;/用 new 为节点 p 动态分配存储空间p-data=ch;/*found*_; /在链表首部插入该节点p=head;while(p!=NULL)coutp-data;p=p-link;coutendl;return 0:(分数:40.00)_三、3综合应用题(总题数:1,分数:30.00)3.请使用“答题”菜单或使用 VC6 打开考生文件夹 proj3 下的工程 proj3,其中声明了 DataList 类,这是一个用于表示数据表的类。sort 成员函数的功能是将当前数据表排序,使得表中的元素呈升序排列。请编写这个 so

    7、rt 函数。程序的正确输出应该是:排序前: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 文件,并且在本程序中调用。/源程序#include“DataList.h“DataList: DataList(int len, double data):len(len)d=new doublelen;for(int i=0; ilen; i+) di

    8、=(data=NULL?0.0:datai);void DataList:sort()/数据表排序/*333*/*666*void DataList:show() const/显示数据表for(int i=0; ilen-1,i+) coutdi“,“;coutdlen-1endl;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();coutendl“排序后:“;list.show();/writeToFile(“K:/b10/61000102/

    9、“,list);return 0:(分数:30.00)_二级 C+机试-129 答案解析(总分:100.00,做题时间:90 分钟)一、1基本操作题(总题数: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 do

    10、g named Hihi.注意:只能修改每个/ERROR*found*下的那一行,不要改动程序中的其他内容。/源程序#include iostreamusing namespace std;/狗的颜色:黑、白、黄、褐、花、其他enum DOGCOLOR BLACK,WHITE,YELLOW,BROWN,PIEBALD,OTHER;class Dog/狗类DOCCOLOR color;char name20;static int count;public:Dog(char name,DOGCOLOR color)strcpy(this-name,name);/ERROR*found*strcpy

    11、(this-color,color);DOGCOLOR getColor() const return color;/ERROR*found*const char*getName() const return*name;const char*getColorString() constswitch(color)case BLACK: return“black“;case WHITE: return“white“;case YELLOW: return“yellow“;case BROWN: return“brown“;case PIEBAIJD: return“piebald“;return“

    12、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);dog1show();dog2.show();dog3.show();return 0:(分数:30.00)_正确答案:(this-color=color;2)const char* getName()const return name;3)Dog dog1(“Hoho

    13、“,WHITE), dog2(“Haha“,BLACK),dog3(“Hihi“,OTHER);)解析:枚举变量的赋值,不能用 strcpy。strcpy 主要用于字符数组赋值,不能用于枚举赋值。2)getName 的函数返回类型是数组,应与 return 返回类型一致。name 本来就是一个字符数组,所以不需要再加“*“。3)定义同一类型的多个变量,变量之间用“,“隔开,最后一个变量后面跟“;“。二、2简单应用题(总题数:1,分数:40.00)2.请使用“答题”菜单或使用 VC6 打开考生文件夹 proj2 下的工程 proj2,函数 void Insert(node*q)使程序能够完成如下

    14、功能:从键盘输入一行字符,调用该函数建立反序的无头结点的单链表,然后输出整个链表。注意:请勿修改主函数 main 和其他函数中的任何内容,只需在画线处编写适当代码,也不能删除或移动/*found*。/源程序 proj2.cpp#includeiostreamusing namespace std;struct nodechar data;node*link:*head; /链表首指针void Insert(node*q) /将节点插入链表首部/*found*_;head=q;int main()char ch;node *p;head=NULL:cout“Please input the st

    15、ring“endl;while(ch=cin.get()!=/n)/*found*_;/用 new 为节点 p 动态分配存储空间p-data=ch;/*found*_; /在链表首部插入该节点p=head;while(p!=NULL)coutp-data;p=p-link;coutendl;return 0:(分数:40.00)_正确答案:(1)node*head;2)p=new node();3)p-link=head; head=p;)解析:1)后面有 head=q;,显然有个变量头指针没定义,所以在该行应该定义一个头指针 head。2)为指针 p 分配内存空间。3)将新结点插入到链表中,

    16、链表的指针顺序不能搞错,应该是先将 p-link 指向 head 指向的地址,然后将 head 指针指向 p。三、3综合应用题(总题数:1,分数:30.00)3.请使用“答题”菜单或使用 VC6 打开考生文件夹 proj3 下的工程 proj3,其中声明了 DataList 类,这是一个用于表示数据表的类。sort 成员函数的功能是将当前数据表排序,使得表中的元素呈升序排列。请编写这个 sort 函数。程序的正确输出应该是:排序前: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*两行

    17、之间,不得修改程序的其他部分。注意:程序最后已经将结果输出到文件 out.dat 中。输出函数 writeToFile 已经编译为 obj 文件,并且在本程序中调用。/源程序#include“DataList.h“DataList: DataList(int len, double data):len(len)d=new doublelen;for(int i=0; ilen; i+) di=(data=NULL?0.0:datai);void DataList:sort()/数据表排序/*333*/*666*void DataList:show() const/显示数据表for(int i=

    18、0; ilen-1,i+) coutdi“,“;coutdlen-1endl;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();coutendl“排序后:“;list.show();/writeToFile(“K:/b10/61000102/“,list);return 0:(分数:30.00)_正确答案:(/*333*int n=len:int tmp;for(int i=0;in;i+)for (int j=0;ji;j+)if(didj)tmp=di;di=dj;dj=tmp;/*666*)解析:解析 首先取得数组的长度 len。然后利用插入法进行排序,逐次比较已经有序的数组序列,待排的 di和前面 i-1 个已经有序的数组序列比较,如果 didj,则交换位置。


    注意事项

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




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

    收起
    展开