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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、国家二级 C+机试(操作题)模拟试卷 83及答案与解析 一、基本操作题 1 使用 VC6打开考生文件夹下的源程序文件 modil cpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为: sizeoffstrl)=5 sizeof(str2)=10 sizeof(str3)=1 注意:不要改动 main函数,不能增行或删行,也不能更改程序的结构,错误的语句在 *error*的下面。 (1)不能删除 assert()语句; (2)只能修改后面的数字。 提示: assert()函数如果为假,则会产生一个中断异常。 #include #include void main(

2、) char*strl=”abc”; *error* assert(Sizeof(str1)=3); cout void fun(int n) void main() int n; coutn if(n us ing namespace std; C1ass CPIanet protected: *1* public: CPlanet(double d, int r) distance=d; revolveperiod= r; ; class CEarth: public CPlanet( double c i rcumf erence, public: *2* CEarth(double d

3、, int r) circumference=2*d*3 1416, *3* cout”distance= ”distanceendl? cout”revolution Period=“revolvePeriodendl ; cout”revolution circumference=”circumference endl; ; Void mein() CEarth earth(9300000, 365); earth display(); 国家二级 C+机试(操作题)模拟试卷 83答案与解析 一、基本操作题 1 【正确答案】 (1)assert(Sizeof(strl)=4); (2)ass

4、ert(Sizeof(str2)=10); (3)assert(Sizeof(str3)=1); 【试题解析】 本题的功能是利用 assert()函数,则会产生一个中断异常。从已定源程序的 main主函数开始入手,依次执行程序中的语句,输出题目中要求的输出值。本题在调试的时候并不会产生错误,它的错误是逻辑错误。 解题思路 (1)assert()函数如果为假,则会产生一个中断异常。所以要让它正常执行输出结果,那么 assert()函数就要为真,才不会产生中断异常。 “assen(sizeof(str1)=3); ”语句中 “sizeof(str1)=3”为假,这个会使程序产生异常,不能正常执行。

5、因为 str1的值为 abc但是 它还有一个尾符,所以它的长度应该是 4,而不是 3,所以第 1个标识下修改为 “assert(sizeof(str1)=4); ”0 (2)同 (1), str210说明, str2的空间为 10,第 2个标识下修改为“assert(sizeof(slr2=10); ”。 (3)同 (1), char str3: 23;语句说明 23是字符,占空间为 l,所以修改为“assen(sizeof(str3)=1); ”。 二、简单应用题 2 【正确答案】 int i; for(i=0; in ; i+) 外层循环, 要打印的行数 int j ; f01“(j=0

6、; jni一 1; j+) 循环打印空格 cout; f027(; jn; j+) 循环打印 coutIf“#”; coutendl: 打印每一行的回车 【试题解析】 (1)该程序功能是打印题目中要求的 #字形状。它的解题思路,在不显示 #字地方,用空格占位。 (2)从已给部分源程序的 main主函数开始入手,核心函数 void fun(int n)中的 n参数为输入的要打印的行数。 解题思路 (1)外层循环打印每一行。 (2)内层循环,分为打印空格和打印 #。打印空格由第一个位置到第 n-i-1。打印 #,是由打印完空格开始一直到行结束。 (3)最后在外循环中打印每一行的结束。 三、综合应用

7、题 3 【正确答案】 (1)添加语句: double cRstance; int revolvePeriod; (2)将 “CEarth(double d, int r)”补充完整为: CEarth(double d, int r): CPlanet(d, r) (3)添加 语句: void di splay() 【试题解析】 (1)题目 1要求 “义类 CPlanet的保护数据成员 distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转周期。其中,distance为 double型, revolvePefiod为 int型 ”,因此第 1个标识下是添加数据成员

8、 distance和 revolvePeriod的声明,因此第 1个标识下应添加 “double distance;int revolvePeriod; ”。 (2)假定: circumference=2 d 3 1416”,第 2个标识下构造函数 CEarth(double d,int r)完成类成员变量的初始化,在函数体内部完成了 circumference的初始化,而变量 distance和 revolvePeriod并没有初始化,需调用基类的构造函数来初始化这两个变量,因此第 2个标识下应改为 “CEarth(double d, int r): CPlanet(d, r)”。 (3)第 3个标识下完成成员函数 display0的定义,函数 display0的返回值为 void,因此第 3个标识下应添加 “voiddisplay0”。

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