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

    [计算机类试卷]国家二级(C++)机试模拟试卷37及答案与解析.doc

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

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

    [计算机类试卷]国家二级(C++)机试模拟试卷37及答案与解析.doc

    1、国家二级( C+)机试模拟试卷 37及答案与解析 一、程序改错题( 30分) 1 使用 VC6打开考生文件夹下的工程 test23_1,此工程包含一个源程序文件test23_1.cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下 : i iz O 12 22 源程序文件 test23_1.cpp清单如下: #include iostream.h #include stdio.h class innerclass int x; public: /*found*/ innerclass(int z) x=z; cout “iz“ endl; /*found*/ void writ

    2、e( ) print(“%dn“,x); class outerclass int y; innerclass g; innerclass *h; public: outerclass(int a); void write( ) printf(“%dn“,y); void write_inner_g() g.write(); void write_inner_h() h- write(); ; outerclass:outerclass(int a) /*found*/ h=new innerclass(12); cout “o“ endl; int main ( ) outerclass o

    3、b(22); ob.write_inner_h(); ob.write(); return 1; 二、简单应用题( 40分) 2 请编写类的成员函数 char Buff=new charLength; CharArray () delete Buff; int GetLength () return Length; char private: int Length; char *Buff; ; char CharArray string1(6); char *string2=“string“; for(cnt=0; cnt 8; cnt+) string1cnt = string2cnt; c

    4、out “n“; for(cnt=0; cnt 8; cnt+) cout string1cnt; cout “n“; cout string1.GetLength() endl; 三、综合应用题( 30分) 3 使用 VC6打开考生文件夹下的工程 test22_3,此工程包含一个源程序文件test22_3.cpp,其中定义了用于表示考生的类 CStudent和它的派生类CGraduateStudent,但它们的定义并不完整。请按要求完成下列操作,将程序补充完整。 (1)定义 CStudent的构造函数,函数含参数 nm,它是 char型的指针数据,请使用字符串函数将类数据成员 name初始化

    5、。请在注释 “/*1*”之后添加适当的语句。 (2)完成类 CStudent的成员函数 void addscore(double sc)的定义,将类数据成员score加上参数 sc,请在注释 “/*2*”之后添加适当的语句。 (3)添加类 CGraduateStudent的成员函数 void addpaper(int d)的定义,将 int型的参数 d的值加到类的数据成员 paper上,请在注释 “/*3*”之后添加适当的语句。 (4)调用对象 sdt的成员函数 addpaper使得该考生的论文数量变为 10,将请在注释“/*4*”之后添加适当的语句。 输出结果如下: Student Hans

    6、on (Advisor:MichaelPhong) Total paper is 10 注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。 源程序文件 test22_3.cpp清单如下: #include iostream.h #include string.h class CStudent private: char name30; int code; double score; public: CStudent(char* nm) /*1* CStudent() void putname(char* nm) strcpy(name,nm); void putcode(int d)

    7、code=d; void putscore(double sc)score=sc; void getname(char* nm)strcpy(nm, name); double getcode()return code; ) double getscore()return score; void addscore(double sc) /*2* ; class CGraduateStudent:public CStudent private: char advisor30; int paper; public: void putadvisor(char*nm) strcpy(advisor,

    8、nm); void getadvisor(char*nm) strcpy(nm, advisor); void putpaper(int d) paper=d; /*3* int getpaper() return paper; ; void main() CGraduateStudent sdt; sdt.putname(“Hanson“); sdt.putadvisor(“MichaelPhong“); sdt.putpaper(8); /*4* char csname30; sdt.getname(csname); char caname30; sdt.getadvisor(caname

    9、); cout “Student“ csname endl; cout “(Advisor:“ caname “)“ endl; cout “Total paper is“ sdt.getpaper() endl; 国家二级( C+)机试模拟试卷 37答案与解析 一、程序改错题( 30分) 1 【正确答案】 (1)错误:缺少缺省的构造函数 正确: innerclass()cout “i“ endl; (2)错误: void write()print(“%dn“,x); 正确: void write()printf(“%dn“,x); (3)错误:缺少赋值语句 正确: y=a; 【试题解析】 (

    10、1)主要考查考生对于派生类调用基类构造函数的应用,此处必须定义缺省的构造函数 (g调用 ); (2)主要考查考生对于格式化输出的掌握,应该使用函数 printf,其中的 %d表示 是输出整型: (3)主要考查考生对于构造函数作用的掌握,只有在此处赋值才能将 22显示出来,因为构造函数在声明对象的时候会被自动的调用。 二、简单应用题( 40分) 2 【正确答案】 char & CharArray:operator (int i) static char ch=0; if(i Length & i =0) return Buffi; else cout “nIndex out Of range.“; return ch; 【试题解析】 本题主要考查考生对于运算符重载的掌握,重载下标运算是安全数组中非常重要的。注意下标操作符最终的目的是返回该下标对应的字符。 三、综合应用题( 30分) 3 【正确答案】 (1) strcpy(name,nm); (2) score+=sc; (3) void addpaper(int d)paper+=d; (4) sdt.addpaper(2); 【试题解析】 本题主要考查考生对于类的定义和使用对象调用成员函数的理解,注意认真的阅读主程序,弄清楚 (4)中 paper的原值为 8。


    注意事项

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




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

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

    收起
    展开