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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

【计算机类职业资格】二级C++机试-89及答案解析.doc

1、二级 C+机试-89 及答案解析(总分:100.00,做题时间:90 分钟)一、1改错题(总题数:1,分数:33.00)1.使用 VC6 打开考生文件夹下的工程 test20_1,此工程包含一个源程序文件 test21_1cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下:(1,2)5,6(6,9)源程序文件 test20_1.cpp 清单如下:#includeiostream.hclass Apublic:A(int i,int j) a=i; b=j; /* found */void Move( int x, iht y) a+=x;b+=yvoid Show() cou

2、t “(“a“,“b“)“end1;private :int a,b;class B:private Apublic:/* found */B(int i,int j,int k, int 1): (i,j) x=k;y=1;void Show () coutx“, “yend1; void fun() Move(3,5); /* found */void f1() Show();private:int x,y;void main ()A e(1,2);e. Show ( );B d(3,4,5,6);d. fun();d. Show ( );d.f1();(分数:33.00)填空项 1:_二

3、、2简单应用题(总题数:1,分数:33.00)2.请编写一个函数 int pattern_index(char substr,char str),该函数执行含通配符“?”的字符串的查找时,该通配符可以与任一个字符匹配成功。当子串 substr 在 str 中匹配查找成功时,返回子串substr 在 str 中的位置,否则返回值为 0。要求使用 for 循环实现。输出结果如下:子串起始位置:5注意:部分源程序已存在文件 test20_2.cpp 中。请勿修改主函数 main 和其他函数中的任何内容,仅在函数 pattern_index 的花括号中填写若干语句。文件 test20_2.cpp 的内

4、容如下:#includeiostream.hint pattern_index(char substr,char str)void main ( )char *substring,*string;int same;substring=“?gram“;string=“this program return index of substring“;same=pattern_index(substring, string);if(same)cout“子串起始位置: “sameend1;elsecout“匹配不成功“ end1;(分数:33.00)_三、3综合应用题(总题数:1,分数:34.00)3.

5、使用 VC6 打开考生文件夹下的工程 test20_3,此工程包含一个源程序文件 test20_3.cpp,其中定义了用于表示复数的类 comp,但类 comp 的定义并不完整。请按要求完成下列操作,将类 comp 的定义补充完整。(1)定义 comp 的构造函数,函数含参数 x 和 y,它们都是 int 型的数据,默认值都为 0,请使用参数列表的形式分别将类数据成员 a 和 b 初始化 x 和 y 的值。请在注释“/*1*”之后添加适当的语句。(2)完成类 comp 的成员函数 input(int x,int y)的定义,将 int 型的参数 x 和 y 分别赋值给数据成员 s和 b,请在注

6、释“/*2*”之后添加适当的语句;(3)完成类 comp 的友元函数 friend compplus(comp int b;public:/*1*friend comp plus(comp void input(int x,int y)/*2*void output ( )couta+b“i“end1;comp plus(comp return c;void main()comp x(10,20),y,z;y.input(2,3);z=plus(x,y);x.output();y.output();cout“result:“;z.output();(分数:34.00)_二级 C+机试-89 答

7、案解析(总分:100.00,做题时间:90 分钟)一、1改错题(总题数:1,分数:33.00)1.使用 VC6 打开考生文件夹下的工程 test20_1,此工程包含一个源程序文件 test21_1cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下:(1,2)5,6(6,9)源程序文件 test20_1.cpp 清单如下:#includeiostream.hclass Apublic:A(int i,int j) a=i; b=j; /* found */void Move( int x, iht y) a+=x;b+=yvoid Show() cout “(“a“,“b“)“

8、end1;private :int a,b;class B:private Apublic:/* found */B(int i,int j,int k, int 1): (i,j) x=k;y=1;void Show () coutx“, “yend1; void fun() Move(3,5); /* found */void f1() Show();private:int x,y;void main ()A e(1,2);e. Show ( );B d(3,4,5,6);d. fun();d. Show ( );d.f1();(分数:33.00)填空项 1:_ (正确答案:(1)错误:v

9、oid Move(int x,int y)a+=x;b+=y正确:void Move(int x,int y)a+=x;b+=y;(2)错误:B(int i,int j,int k,int1):(i,j)(x=k;y=1;正确:B(in i,int j,int k,int 1):A(i,j)x=k;y=1;(3)错误:void f1()Show();正确:viid f1()A:Show();)解析:解析(1)主要考查考生对于表达式定义规则的掌握,此处缺少一个“;”,任何表达式都应该以“;”作为结束标志;(2)主要考查考生对于派生类构造函数定义的掌握,参数列表中基类的成员应使用基类构造函数初始化

10、,所以必须向基类传递参数,传递时直接使用基类名;(3)主要考查考生对于基类函数调用方法的掌握,为了调用基类的函数应该使用作用域符“:”以限定访问的位置。二、2简单应用题(总题数:1,分数:33.00)2.请编写一个函数 int pattern_index(char substr,char str),该函数执行含通配符“?”的字符串的查找时,该通配符可以与任一个字符匹配成功。当子串 substr 在 str 中匹配查找成功时,返回子串substr 在 str 中的位置,否则返回值为 0。要求使用 for 循环实现。输出结果如下:子串起始位置:5注意:部分源程序已存在文件 test20_2.cpp

11、 中。请勿修改主函数 main 和其他函数中的任何内容,仅在函数 pattern_index 的花括号中填写若干语句。文件 test20_2.cpp 的内容如下:#includeiostream.hint pattern_index(char substr,char str)void main ( )char *substring,*string;int same;substring=“?gram“;string=“this program return index of substring“;same=pattern_index(substring, string);if(same)cout

12、“子串起始位置: “sameend1;elsecout“匹配不成功“ end1;(分数:33.00)_正确答案:(int pattern_index(char substr,char str)int i,j,k;for(i=0;stri;i+)for(j=i,k=0;(strj=substrk)|(substrk=?);j+,k+)if(!substrk+1)return(i);return(0);)解析:解析本题主要考查的是考生使用 for 循环和一维数组的综合能力。对于复杂查找,往往使用 for的多重循环,注意里层 for 循环用来查找字符串的使用三、3综合应用题(总题数:1,分数:34.

13、00)3.使用 VC6 打开考生文件夹下的工程 test20_3,此工程包含一个源程序文件 test20_3.cpp,其中定义了用于表示复数的类 comp,但类 comp 的定义并不完整。请按要求完成下列操作,将类 comp 的定义补充完整。(1)定义 comp 的构造函数,函数含参数 x 和 y,它们都是 int 型的数据,默认值都为 0,请使用参数列表的形式分别将类数据成员 a 和 b 初始化 x 和 y 的值。请在注释“/*1*”之后添加适当的语句。(2)完成类 comp 的成员函数 input(int x,int y)的定义,将 int 型的参数 x 和 y 分别赋值给数据成员 s和

14、b,请在注释“/*2*”之后添加适当的语句;(3)完成类 comp 的友元函数 friend compplus(comp int b;public:/*1*friend comp plus(comp void input(int x,int y)/*2*void output ( )couta+b“i“end1;comp plus(comp return c;void main()comp x(10,20),y,z;y.input(2,3);z=plus(x,y);x.output();y.output();cout“result:“;z.output();(分数:34.00)_正确答案:(1)comp(int x=0,int y=0):a(x),b(y)(2)a=x;b=y;(3)comp c;ca=x. a+y. a;)解析:解析本题考查考生对于类的定义和友元函数定义的掌握,请注意(1)中的参数列表形式和(3)中对象使用“”访问它的数据成员。

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