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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、国家二级( C+)机试模拟试卷 47及答案与解析 一、程序改错题( 30分) 1 使用 VC6打开考生文件夹下的工程 test33_1,此工程包含一个源程序文件test33_1.cpp,但该程序运行有问题,请改正程序中的错误,使该程序的输出结果为: Number=1,2,3 sum=16 源程序文件 test33_1.cpp清单如下; #include iostream.h class Num public: /* found */ void Num(int a,int b, int c); void PrintNumber(); void PrintSum(); private: int x

2、,y,z; static int sum; ; /* found */ int sum=10; Num:Num(int a,int b, int c) x=a; y=b; z=c; sum=sum+x+y+c; void Num:PrintNumber() cout “Number=“ x “,“ y “,“ z end1; void Num:PrintSum() cout “sum=“ sum end1; void main( ) Num m(1,2,3),*n; n= m. PrintNumber(); /* found */ n. PrintSum(); 二、简单应用题( 40分) 2

3、请编写一个函数 sum(int array,int len),该函数返回数组 array的所有整数元素的和,其中 len为数组 array的长度。 注意:部分源程序已存在文件 test34_2.cpp中。 请勿修改主函数 main和其他函数中的任何内容,仅在函数 sum的花括号中填写若干语句。 程序输出结果如下: sum of array 15 文件 test34_2.cpp的内容如下: #include iostream.h int sum(int array,int len) void main() static int a5-1,2,3,4,5; int result=sum(a,5);

4、 cout “sum of array “ result end1; 三、综合应用题( 30分) 3 使用 VC6打开考生文件夹下的工程 test32_3。此工程包含一个 test32_3.cpp,其中定义了复数类 complex,但该类的定义并不完整。请按要求完成下列操作,将程序补充完整。 (1)定义复数类 complex的私有数据成员 real和 image,用来分别表示复数的实部和虚部,它们都是 double型的数据。请在注释 “/*1*”之后添加适当的语句。 (2)添加复数类 complex的带一个参数的构造函数,分别将 real和 image赋值为参数 r的值和 0.0,请在注释 “

5、/*2*”之后添加适当的语句。 (3)完成复数类 complex的 “+”运算符重载成员 函数的定义,两个复数相加是将复数的实部和虚部分别进行相加,请在注释 “/*3*”之后添加适当的语句。 (4)完成复数类 complex的友元函数 isequal(complex *cl,complex *c2)的定义,如果复数 c1与 c2相等即 c1与 c2的实部和虚部分别相等,则返回 1,否则返回 0。请在注释 “/*4*”之后添加适当的语句。 程序输出结果如下: 36+0i=36+0i 注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。 源程序文件 test32_3.cpp清单如下: #i

6、nclude iostream.h class complex public: complex()real=image=O.O; complex(double r) /* 2 * complex operator+(const complex friend bool isequal(complex *c1,complex *c2 void display(); ; complex complex:operator+(const complex temp.image=image+c.image; return temp; bool isequal(complex *c1,complex *c2)

7、 / /* 4 * return 1; else return 0; void complex: display() cout real; if (image =0) cout “+“ image “i“; else if (image 0) cout image “i“; void main() complex c1,c2(36.0); c1=c1+c2; c1.display(); if (isequal( else coat “ “; c2.display(); cout end1; 国家二级( C+)机试模拟试卷 47答案与解析 一、程序改错题( 30分) 1 【正确答案】 (1) 错

8、误: void Num(int a,int b,int c); 正确: Num(int a,int b,int c); (2) 错误: int sum=10; 正确: int Num: sum=10; (3) 错误: n PrintSum(); 正确: n- PrintSum(); 【试题解析】 (1)函数 Num为构造函数,构造函数不指定返回类型,其隐含有返回值,由系统内部使用; (2)由于静态数据成员 sum是类 Num的成员,因此在初始 化时必须使用作用域运算符限定其所属的类; (3)n为指向类 Num对象的指针,其访问公有成员函数需使用 “- ”,而不能使用“ ”。 二、简单应用题(

9、40分) 2 【正确答案】 int sum(int array,int len) int sum=0; for (int i=0;i len;i+) sum=sum+arrayi; return sum; 【试题解析】 本题主要考查考生对于数组访问和 for循环语句的掌握。应该注意的是 ,长度为 len的数组 array的下标范围为 0到 len-1,而不是从 1到 len,所以循环控制变量的初始值为 0。 三、综合应用题( 30分) 3 【正确答案】 (1) double real,image; (2) real r; image=0.0; (3) complex temp; (4) if(c1- real=c2- real)&(c1- image=c2- image) 【试题解析】 本题主要考查了类的定义、类构造函数的重载、运算符重载和友元函数等知 识点。特别是在重载运算符 “+”中临时复数类的申请,相加的两个复数实部与虚部数值的获取,都是需要牢记的,这是运算符重载函数编写的核心所在。

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