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

    【计算机类职业资格】国家二级C++机试(操作题)模拟试卷349及答案解析.doc

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

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

    【计算机类职业资格】国家二级C++机试(操作题)模拟试卷349及答案解析.doc

    1、国家二级 C+机试(操作题)模拟试卷 349及答案解析(总分:8.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.请使用 VC6或使用【答题】菜单打开考生文件夹 pmj1下的工程 pmjl,此工程中含有一个源程序文件pmj1cpp。其中位于每个注释“ERROR *found*”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为: This object is no1 注意:只修改注释“ERROR *found*”的下一行语句,不要改动程序中的其他内容。proj1cpp#includeiostreamusing namespace std;class NyCl

    2、asspublic: NyClass():count(0)cout”This object is”;)ERROR*found* void Inc()const tout”no”+countend1;private:ERROR*found* int count=0; ; int main() NyClass*obj=new NyClass; ERROR*found* *objInc(); return 0; (分数:2.00)_2.请使用 VC6或使用【答题】菜单打开考生文件夹 projl下的工程 proj1,该工程中含有一个源程序文件proj1epp。其中位于每个注释“ERROR*found*

    3、”之后的一行语句有错误。请改正这些错误,使程序的输出结果为:12 3 4 5 6 7 8 9 10 注意:只能修改注释“ERROR*found*”的下一行语句,不要改动程序中的其他内容。proj1cpp#includeiostreamusing namespace std;class MyClasspublic: MyClass(int len) array=new intlen; arraySize=len; for(int i=0;iarraySize;i+) arrayi=i+1; 一 MyClass() ERROR*found* delete arrayi; ) void Print(

    4、)const for(int i=0;iarraySize;i+)ERROR*found* cinarrayi”; Coutendl; private: int*array; int arraySize; ); int main() ERROR*found*MyClass obj;objPrint();return 0;(分数:2.00)_二、简单应用题(总题数:1,分数:2.00)3.请使用 VC6或使用【答题】菜单打开考生文件夹 pmj2下的工程 pmj2,该工程中包含程序文件maincpp,其中有类 Mammal(“哺乳动物”)、类 Elephant(“大象”)、类 Nome(“老鼠”)

    5、的定义和主函数 main的定义。请在横线处填写适当的代码并删除横线,以实现上述定义。此程序的正确输出结果应为: ELEPHANT MOUSE 注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“*found*”。#includeiostreamusing namespace std;enum category ENPTY,ELEPHANT,NOUSE);char*output=”ENPTY”,”ELEPHANT”,”NOUSE”;ClasS Nammalpublic: Nammal(char*str) *found*name=new_strcpy(name,str);

    6、 virtual char*WhoAmI()=0; virtualNammal()deletename; void Print()toutWhoAmI()end1;)private: char*name;class Elephant:public Nammalpublic:*found*Elephant(char*str):_ char*WhoAmI()return outputELEPHANT;);class Mouse:public Mammalpublic: Mouse(char*str):Mammal(str)*found*char*WhoAmI()_ ; int main() *fo

    7、und*Mammal*pm=new_(”Huanhuan”); pm-Print(); delete pm; pm=new Mouse(”Micky”); pm-Print(); delete pm; return 0; (分数:2.00)_三、综合应用题(总题数:1,分数:2.00)4.使用 VC6打开考生文件夹 proj3下的工程 proj3,其中声明了 MyString类,它是一个用于表示字符串的类。成员函数 reverse将字符串反转,例如“abcde”反转后就成了“edcba”。请补充完整函数reverse。在 main函数中给出了一个测试数据,此情况下程序的输出应该是: This

    8、is a string gnirts a si sihT 注意:只需在函数 reverse的*333*和*666*之间填入若干语句,不要改动程序中的其他内容。MyStringh#includeiostreamusing namespace std;char*dup(const char*);class MyString char*str;public: MyString(const char*s=”):str(dup(S) MyString(const MyString strcpy(P,S); return p; void MyString:reverse() *333* *666* voi

    9、d writeToFile(const char*path); writetoFilecpp #includefstream #include”MyStringh” void writeToFile(const char*path) char full50; strcpy(full,path); strcat(full,”outdat”);ofstream outfile(full); if(outfilefail()cerr”打开输出文件失败!”;return;) MyString m1=”This is another string”; MyString m2(”字符串反转演示”); ou

    10、tfilemlm2; m1reverse(); m2reverse(); outfilemlm2; outfileclose(),(分数:2.00)_国家二级 C+机试(操作题)模拟试卷 349答案解析(总分:8.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.请使用 VC6或使用【答题】菜单打开考生文件夹 pmj1下的工程 pmjl,此工程中含有一个源程序文件pmj1cpp。其中位于每个注释“ERROR *found*”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为: This object is no1 注意:只修改注释“ERROR *found*”

    11、的下一行语句,不要改动程序中的其他内容。proj1cpp#includeiostreamusing namespace std;class NyClasspublic: NyClass():count(0)cout”This object is”;)ERROR*found* void Inc()const tout”no”+countend1;private:ERROR*found* int count=0; ; int main() NyClass*obj=new NyClass; ERROR*found* *objInc(); return 0; (分数:2.00)_正确答案:(正确答案:

    12、(1)void Inc() (2)int count; (3)obj 一Inc();)解析:解析:(1)考查考生对 const的掌握,在 Inc函数的函数体cout“no”+count”,而不能使用“”。2.请使用 VC6或使用【答题】菜单打开考生文件夹 projl下的工程 proj1,该工程中含有一个源程序文件proj1epp。其中位于每个注释“ERROR*found*”之后的一行语句有错误。请改正这些错误,使程序的输出结果为:12 3 4 5 6 7 8 9 10 注意:只能修改注释“ERROR*found*”的下一行语句,不要改动程序中的其他内容。proj1cpp#includeiost

    13、reamusing namespace std;class MyClasspublic: MyClass(int len) array=new intlen; arraySize=len; for(int i=0;iarraySize;i+) arrayi=i+1; 一 MyClass() ERROR*found* delete arrayi; ) void Print()const for(int i=0;iarraySize;i+)ERROR*found* cinarrayi”; Coutendl; private: int*array; int arraySize; ); int mai

    14、n() ERROR*found*MyClass obj;objPrint();return 0;(分数:2.00)_正确答案:(正确答案:deletearray; COUtarrayi解析:解析:(1)语法错误,使用 delete语句删除一个指针时,直接把指针变量的名称放在 delete后面即可。 (2)考查考生对输入、输出语句的运用。使用 cout进行数据输出操作,一般格式为:COUtExpr;。其中,Expr 代表一个表达式,“”称为插入运算符,该语句的含义是,将表达式Expr的值输出到屏幕上。使用 cin进行数据输入操作,一般格式为:cinvar;。其中,vat 代表一个变量,“”称为提

    15、取运算符,该语句的含义是,将用户输入的数据保存到 var中。 (3)考查语句的初始化,我们来看 MyClass类的构造函数: MyClass(lnt len) array=new intlen; 给数组动 态分配空间,大小为 len arraysize=len; 赋值 for(int i=0;iarraySize;i+) arrayi=i+1; 循环给数组赋 值,从 1到 10 二、简单应用题(总题数:1,分数:2.00)3.请使用 VC6或使用【答题】菜单打开考生文件夹 pmj2下的工程 pmj2,该工程中包含程序文件maincpp,其中有类 Mammal(“哺乳动物”)、类 Elephan

    16、t(“大象”)、类 Nome(“老鼠”)的定义和主函数 main的定义。请在横线处填写适当的代码并删除横线,以实现上述定义。此程序的正确输出结果应为: ELEPHANT MOUSE 注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“*found*”。#includeiostreamusing namespace std;enum category ENPTY,ELEPHANT,NOUSE);char*output=”ENPTY”,”ELEPHANT”,”NOUSE”;ClasS Nammalpublic: Nammal(char*str) *found*name=n

    17、ew_strcpy(name,str); virtual char*WhoAmI()=0; virtualNammal()deletename; void Print()toutWhoAmI()end1;)private: char*name;class Elephant:public Nammalpublic:*found*Elephant(char*str):_ char*WhoAmI()return outputELEPHANT;);class Mouse:public Mammalpublic: Mouse(char*str):Mammal(str)*found*char*WhoAmI

    18、()_ ; int main() *found*Mammal*pm=new_(”Huanhuan”); pm-Print(); delete pm; pm=new Mouse(”Micky”); pm-Print(); delete pm; return 0; (分数:2.00)_正确答案:(正确答案:(1)charstrlen(str)+1; (2)Mammal(str) (3)return outputMOUSE; (4)Elephant)解析:解析:(1)主要考查分配空间,程序要给 name分配空间,由下一条语句中 strcpy(name,str)可知程序要把字符串 str复制给 nam

    19、e,因此要分配的空间大小为 strlen(str)+1。 (2)主要考查考生对构造函数的掌握,因为 Elephant类是 Mammal类的派生类,所以其构造函数要使用成员列表先对 Mammal类初始化。 (3)主要考查考生对枚举类型的掌握,先看程序:enumcategoryEMPTY,ELEPHANT,MOUSE。再参考Elephant类中的 WhoAmI函数:char*WhoAmI()return outputELEPHANT;。可知这里要填写的返回语句为:return outputMOUSE;。 (4)主要考查考生对派生类的掌握,题目要求输出: ELEPHANT MOUSE 可知,要先调用

    20、 Elephant类的 WhoAmI函数,因此给指针 pm分配 Elephant类空间。三、综合应用题(总题数:1,分数:2.00)4.使用 VC6打开考生文件夹 proj3下的工程 proj3,其中声明了 MyString类,它是一个用于表示字符串的类。成员函数 reverse将字符串反转,例如“abcde”反转后就成了“edcba”。请补充完整函数reverse。在 main函数中给出了一个测试数据,此情况下程序的输出应该是: This is a string gnirts a si sihT 注意:只需在函数 reverse的*333*和*666*之间填入若干语句,不要改动程序中的其他内

    21、容。MyStringh#includeiostreamusing namespace std;char*dup(const char*);class MyString char*str;public: MyString(const char*s=”):str(dup(S) MyString(const MyString strcpy(P,S); return p; void MyString:reverse() *333* *666* void writeToFile(const char*path); writetoFilecpp #includefstream #include”MyStr

    22、ingh” void writeToFile(const char*path) char full50; strcpy(full,path); strcat(full,”outdat”);ofstream outfile(full); if(outfilefail()cerr”打开输出文件失败!”;return;) MyString m1=”This is another string”; MyString m2(”字符串反转演示”); outfilemlm2; m1reverse(); m2reverse(); outfilemlm2; outfileclose(),(分数:2.00)_正确答案:(正确答案:VOid MyString:reverse() int i,j; char ch; int len=strlen(str); for(i=0,j=len 一 1;i解析:解析:程序定义了 MyString类,它包含一个成员:str 字符指针;默认构造函数和复制构造函数通过 dup()函数,动态分配地址 p将参数拷贝到 p指向的内存空间,再使用 p初始化 str;show()成员函数将 str指向的字符串输出;reverse()成员函数将 str指向的字符串反转;重载的


    注意事项

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




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

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

    收起
    展开