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

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

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

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

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

    1、国家二级 C+机试(操作题)模拟试卷 307及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.使用 VC6打开考生文件夹下的源程序文件 modi1cpp,该程序运行时有错误,请改正程序中的错误。 本题的功能是:从键盘输入字符串 S,然后输出字符串 S中的字符个数。 注意:不要改动 main函数,不能增行或删行,也不能更改程序的结构,错误的语句在*error*的下面。#includeiostreamint main() *error* cout“please input a string:“endl; *error* namespace std;

    2、char s256; cingetline(s,256); coutstrlen(s)endl; return 0;(分数:2.00)_二、简单应用题(总题数:1,分数:2.00)2.使用 VC6打开考生文件夹下的源程序文件 modi2cpp。阅读下列函数说明和代码,补充空出的代码。函数 convert(cha*des,char*str)实现的功能是: (1)如果字符串最后面有空格,则全部删除; (2)转换后的数据放到 des,并且指针作为返回值返回。 注意:不能修改程序的其他部分,只能补充 convert()函数。 #include #include #defime MAXLEN 1024

    3、char*convert(char*des,char* str) Void main() char destMAXLEN; char*string=“abc def “: cout string “-“ endl; cout“-“_三、综合应用题(总题数:1,分数:2.00)3.使用 VC6打开考生文件夹下的源程序文件 modi3cpp,其中定义了类 baseA、priA1 和 priA2,其中priA1类由 baseA类公有派生,priA2 类由 priA1类公有派生。上述三个类的定义并不完整,请按要求完成下列操作,将程序补充完整。 程序输出结果如下: 10 5 10 5 7 (1)定义类

    4、baseA的构造函数,该构造函数有一个整型的参数 m,在构造函数中请将 m赋值给数据成员 a。请在注释“*1*”之后添加适当的语句。 (2)定义类 priA1的构造函数,该构造函数有两个整型的参数 m和 n,在构造函数中请将 m赋值给数据成员 b,将 n作为基类 baseA构造函数的参数值传入。请在注释“*2*”之后添加适当的语句。 (3)定义类 priA2的构造函数,该构造函数有三个整型的参数 m,n 和 k,在构造函数中请将 m赋值给数据成员 c,将 n和 k分别赋值给基类研 A1构造函数的参数 m和 n。请在注释“*3*”之后添加适当的语句。 (4)完成类 priA2的成员函数 Show

    5、的定义,该函数调用基类成员函数,输出基类私有成员 a和 b及类 priA2自身的数据成员C的值,上述三个值在输出时以空格隔开。请在注释“*4*”之后添加适当的语句。 注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。#includeiostreamhClass baseA int a;public: *1* int geta()return a;) ; class priAl:public baseA int b;public: *2* int getb()return b;) ; class priA2:public priAl int c;public: *3* Void sho

    6、w() *4* ;Void main() priA2 a(7,5,10); coutageta()endl; coutagetb()endl; ashow();(分数:2.00)_国家二级 C+机试(操作题)模拟试卷 307答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.使用 VC6打开考生文件夹下的源程序文件 modi1cpp,该程序运行时有错误,请改正程序中的错误。 本题的功能是:从键盘输入字符串 S,然后输出字符串 S中的字符个数。 注意:不要改动 main函数,不能增行或删行,也不能更改程序的结构,错误的语句在*error*的下面。#in

    7、cludeiostreamint main() *error* cout“please input a string:“endl; *error* namespace std; char s256; cingetline(s,256); coutstrlen(s)endl; return 0;(分数:2.00)_正确答案:(正确答案:(1)std:cout“please input a string:“解析:解析:(1)第 1个标识下实现在屏幕上输出“please input a string:”提示语句。在程序中用到C+标准库时,要使用 std标准命名空间进行限定。cout 为标准库函数,所

    8、以要声明 tout是在命名空间std中定义的流对象,即第 1个标识下的“std:cout“please input a string:“二、简单应用题(总题数:1,分数:2.00)2.使用 VC6打开考生文件夹下的源程序文件 modi2cpp。阅读下列函数说明和代码,补充空出的代码。函数 convert(cha*des,char*str)实现的功能是: (1)如果字符串最后面有空格,则全部删除; (2)转换后的数据放到 des,并且指针作为返回值返回。 注意:不能修改程序的其他部分,只能补充 convert()函数。 #include #include #defime MAXLEN 1024

    9、char*convert(char*des,char* str) Void main() char destMAXLEN; char*string=“abc def “: cout string “-“ endl; cout“-“_正确答案:(正确答案:int length=0; int i; for(length=0;strlength !=NUL L; length+); 求数组长度 length-;下标从 0len-1,下标减 l表示最后一个字符的下标值 for(i=length;i=0;i-) if(stri!= ) 判断结尾是否有空格,从后往前判断直到不是不是空格了跳出循环 brea

    10、k; for(length =0 ; length=i;length+) deslength=strlength; 从前面开始,逐个将 str中的字符拷贝到 des数组中,不含最后面的空格 deslength=NULL; 最后一字符为 NULL return des;)解析:解析:(1)利用循环将字符串 str的长度求出,然后从字符串的尾部开始检索,用循环从字符串的最后一个字符往前面逐个检查,如果该字符不是空格则退出循环,这个时候就找到了最后一个非空格字符所在的下标位置,然后从下标 0开始到该位置,逐个将 str里面字符拷贝到 des中。 (2)程序当中使用了3次循环:计算长度、寻找最后一个非

    11、空格字符和拷贝三个过程。三、综合应用题(总题数:1,分数:2.00)3.使用 VC6打开考生文件夹下的源程序文件 modi3cpp,其中定义了类 baseA、priA1 和 priA2,其中priA1类由 baseA类公有派生,priA2 类由 priA1类公有派生。上述三个类的定义并不完整,请按要求完成下列操作,将程序补充完整。 程序输出结果如下: 10 5 10 5 7 (1)定义类 baseA的构造函数,该构造函数有一个整型的参数 m,在构造函数中请将 m赋值给数据成员 a。请在注释“*1*”之后添加适当的语句。 (2)定义类 priA1的构造函数,该构造函数有两个整型的参数 m和 n,

    12、在构造函数中请将 m赋值给数据成员 b,将 n作为基类 baseA构造函数的参数值传入。请在注释“*2*”之后添加适当的语句。 (3)定义类 priA2的构造函数,该构造函数有三个整型的参数 m,n 和 k,在构造函数中请将 m赋值给数据成员 c,将 n和 k分别赋值给基类研 A1构造函数的参数 m和 n。请在注释“*3*”之后添加适当的语句。 (4)完成类 priA2的成员函数 Show的定义,该函数调用基类成员函数,输出基类私有成员 a和 b及类 priA2自身的数据成员C的值,上述三个值在输出时以空格隔开。请在注释“*4*”之后添加适当的语句。 注意:除在指定位置添加语句之外,请不要改动

    13、程序中的其他内容。#includeiostreamhClass baseA int a;public: *1* int geta()return a;) ; class priAl:public baseA int b;public: *2* int getb()return b;) ; class priA2:public priAl int c;public: *3* Void show() *4* ;Void main() priA2 a(7,5,10); coutageta()endl; coutagetb()endl; ashow();(分数:2.00)_正确答案:(正确答案:(1)

    14、添加语句:baseA(int m) a=m;) (2)添加语句: priA1(int m,int n):baseA(n)b=m;) (3)添加语句:priA2(int m,int n,int k):priA1(n,k) c=m;) (4)添加语句: coutgeta()“getb()“ “cendl;)解析:解析:(1)根据题目 1要示,构造函数函数名和类名一致,显然 baseA构造函数名为 baseA(),在baseA0qb通过参数 in完成对成员变量 a的赋值,因此构造函数名为 baseA(int m),在函数内部对成员 a赋值,故第 1个标识下应添加“baseA(int m)a=m;”。

    15、 (2)根据题目 2要示,构造函数形式为priA1(int m,int n),m 赋值给 priA1类成员 b,将 n作为基类 baseA构造函数的参数值传入,故第 2个标识下应添加“priA1(int m,int n):baseA(n)b=m;”。 (3)根据题目 3要示,函数形式为priA2(int m,intn,int k),在构造函数中将 m赋值给数据成员 c,将 n和 k分别赋值给基类 priA1构造函数的参数 m和 n,因此第 3个标识下应添加“priA2(int m,int n,intk):priAl(n,k)c=m;”。(4)根据题目 4要示,priA2 类公有派生于 priA1,而研 A1公有派生于 baseA,因此在 priA2类中可以调用基类的 geta()和 getb()来获得基类私有成员 a和 b,再输出 priA2的私有成员 C即满足要求,因此第4个标识下应添加“coutgeta0“ “getb0“ “cendl;”。


    注意事项

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




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

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

    收起
    展开