二级C++机试-177_真题-无答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

二级C++机试-177

(总分100,考试时间90分钟)

1.改错题

1. 使用VC6打开考生文件夹下的工程RevPrroj7。此工程包含一个源程序文件RevMain7.cpp。在该文件中,函数fun()的功能是:逐个比较a、b两个字符串对应位置中的字符,把ASCII码值大或相等的字符依次存放到c数组中,形成一个新的字符串。例如:若a中的字符串为aBCDeFgH,b中的字符串为ABcd,则c中的字符串为aBcdeFgH。

请改正程序中的错误,使它能得到正确结果。

注意,不要改动主函数,不得删行或增行,也不得更改程序的结构。

源程序文件RevMain7.cpp中的程序清单如下:

//RevMain7.cpp

#include<iostream>

#include<string>

using namespace std;

void fun(char *p,char *q,char *c)

int k=1;

while(*p!=*q)

if(*p<*q)

c[k]=*q;

else

c[k]=*p;

if(*p)

p++;

if(*q)

q++;

int main()

char a[10]="aBCDeFgH",b[10]="ABcd",c[80]='\0';

fun(a,b,c);

cout<<"The string a is "<<a<<'\n';

cout<<"The string b is "<<b<<'\n';

cout<<"The string c is "<<c<<endl;

return 0;

2.简单应用题

1. 函数check()用来判断字符串s是否是“回文”(顺读和倒读都一样的字符串称为“回文”,如abcba)。若是回文,函数返回值为1;否则返回值为0。请完成此函数的定义。

注意:部分源程序已存在考生文件夹的文件PROC7.cpp中。

请勿修改主函数和其他函数中的任何内容,仅在函数check()的花括号中填写若干语句。

文件PROC7.cpp的内容如下:

//PROC7.cpp

#include<iostream>

#include<string>

using namespace std;

int check(char*s);

int main()

char str[100],*p;

cout<<"Input your string!";

cin>>str;

p=str;

cout<<"The result is:"<<check(p)<<end1;

int check(char*s)

// * * * * + * * *

3.综合应用题

1. 使用VC6打开考生文件夹下的工程MyProj7。此工程包含一个源程序文件MyMain7.cpp。其中定义了类Sample,但类Sample的定义并不完整。

请按要求完成下列操作,将类Sample的定义补充完成:

①定义私有数据成员n,它是int型的数据。请在注释“//* *1**”之后添加适当的语句。

②完成重载构造函数Sample()的定义,使Sample对象的默认值:n=0。请在注释“//* *2* *”之后添加适当的语句。

③完成成员函数add()的类体内的定义,使成员函数返回的Sample对象的值n为两类Sample对象s1和s2的私有成员n的和。请在注释“//* *3* *”之后添加适当的语句。

④完成成员函数disp()的类外定义,使其以“n=”的格式将Sample对象的值输出到屏幕上。请在注释“* *4* *”之后添加适当的语句。

注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。

源程序文件MyMain7.cpp清单如下:

//MyMain7.cpp

#include<iostream>

using namespace std;

class Sample

private:

//* * 1* *

public:

Sample()

//* *2* *

Sample add(Sample s1,Sample s2)

//* *3* *

void disp();

void Sample: :disp()

//* * 4 * *

int main()

Sample s1(10),s2(5),s3;

cout<<"s1:";

s1.disp();

cout<<"\n S2:";

s2,disp();

s3.add(s1,S2);

cout<<"\n s3.add(s1,s2)\n s3:";

s3.disp();

return 0;

相关文档
最新文档