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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、国家二级( C+)机试模拟试卷 42及答案与解析 一、程序改错题( 30分) 1 使用 VC6打开考生文件夹下的工程 test28_1,此工程包含一个源程序文件test28_1.cpp,但该程序运行有问题,请改正程序中的错误,使该程序的输出结果为: 5 5 源程序文件 test28_1.cpp清单如下: #include iostream.h class A public: /* found * static int n=1; A()n+; A() (n-; ; /* found * int n=0; int main() A a; A b3; A *c=new A; c= /* found

2、* cout c.n end1; cout A:n end1; return 0; 二、简单应用题( 40分) 2 编写函数 fun(),它的功能是求 n以内 (不包括 n)同时能被 3与 7整除的所有自然数之和的平方根 s,并做为函数值返回。例如: n为 1000时,函数值应为 s153.909064。 注意:部分源程序给出如下。 请勿改动主函 数 main和其他函数中的任何内容,仅在函数 fun的花括号中填入所编写的若干语句。 试题程序: #include conio.h #include math.h #include stdio.h double fun(int n) main() c

3、lrscr(); printf(“s=%fn“, fun(1000); 三、综合应用题( 30分) 3 使用 VC6打开考生文件夹下的工程 test27_3。此工程包含一个 test27_3.cpp,其中定义了类 ARRAY,但类的定义并不完整。请按要求完成下列操作,将程序补充完整。 (1)完成类 ARRAY的带一个参数的构造函数,参数 i为 int型,如果 i不是正数则输出错误信息并退出,否则申请 int型的大小为 i的空间,然后把 i赋值给类的数据成员 num。请在注释 “/*1*”之后添加适当的语句。 (2)完成类 ARRAY的拷 贝初始化构造函数,注意解决重复删除的问题,请在注释“/*

4、2*”之后添加适当的语句。 (3)完成类 ARRAY的重载的运算符函数 ,参数 i为 int型,如果 i超界则输出错误信息并退出,否则把下标为 i的元素返回,请在注释 “/*3*”之后添加适当的语句。 (4)完成类 ARRAY的重载的运算符函数二,同样需要注意解决重复删除的问题,不能只是简单的赋值,请在注释 “/* 4*”之后添加适当的语句。 注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。 源程序文件 test27_3.cpp清单如下; #include iostream.h #include stdlib.h class ARRAY private: int* p, num;

5、public: ARRAY ( ) p=new int 10 , num=10; ARRAY ( int i) / * 1 * cout “错误 !数组长度应为正。 n”; exit(0); p=new inti; num= i; ARRAY(const ARRAY int ARRAY() delete p; ARRAY friend ARRAY operator+(ARRAY friend ostream ; ARRAY: :ARRAY(const ARRAY i num; i+) pi=a.pi; int exit (0); return pi; ARRAY p=new int num;

6、for (int i=0; i num; i+) pi=a.pi; / * 4 * ARRAY operator+(ARRAY exit (0); ARRAY t (a.num); for(int i=0;i a.num;i+) t.pi=a.pi+b.pi; return t; ost ream for(;i a.num; i+) cout a.pi ; if (!(i+1) %10) ) cout end1; return os; void main ( ) ARRAY a(3); a0=a1 =a2=3; cout a a end1; ARRAY b ( a ); cout b b en

7、d1; ARRAY c(2); c=a+b+b; cout c c end1; c=( (b= (a+b) +c); cout a a b b c c end1; a7=3; cout a; 国家二级( C+)机试模拟试卷 42答案与解析 一、程序改错题( 30分) 1 【正确答案】 (1) 错误: static int n=1; 正确: static int n; (2) 错误: int n=0; 正确: int A: n=0; (3) 错误: cout c.n end1; 正确: cout c- n end1; 【试题解析】 (1)在类的声明中只能对静态数据成员进行引用性声明,不能进行静态

8、数据成员的初始化: (2)由于静态数据成员是类的成员,所以在初始化时必须限定它所属的类: (3)c为类的对象指针,访问类成员函数时使用符号 “- ”,而不能用 “ ”。 二、简单应用题( 40分) 2 【正确答案】 double fun(int n) double s 0.0; int i; for(i=0; i n;i+) /*从 0 n中找到既能被 3整除同时又能被 7整除的数,并将这些数求和 */ if (i%3=0 s=sqrt (s); /*对 s求平方根 */ return s; 【试题解析】 本题的解题思路是逐个取得从 0 n之间的所有数,对每次取得的数进行条件判断,条件是既能被

9、 3整除同时又能被 7整除,注意:这两个条件要求 同时成立,因此用到了 “&及, 运算符。满足条什,该数就被累加到 s中去,所有符合条件的数找完后,用 sqd()函数 (包含于头文件 math.h中 )对 s求平方根。 三、综合应用题( 30分) 3 【正确答案】 (1) if(i =0) (2) num=a.num; p=new intnum; (3) d(i =num|i 0) (4) return * this; 【试题解析】 主要考查考生对于一个特殊的类 安全数组的掌握,其中涉及了友元函数、重载函数等,其中 (2)中必需申请新的空间,这样可以使得两个对象分别占用不同的两个空间,在自动调用析构函数时不会遇到重复删除的问题,这种方法要掌握。

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