2010年全国计算机等级考试二级3(3)

2019-04-08 18:56

}while(--i);

cout<

} 【参考答案】 【7】-4

8.下面程序的运行结果为【8】。

#include

void fun(int x=0,int y=0) {cout<

void main() {fun(5);} 【参考答案】 【8】50

9.C++语言支持的两种多态性分别是编译时的多态性和【9】的多态性。

【参考答案】 【9】运行时

10.cout.put(′A′);,还可以表示为【10】。

【参考答案】 【10】cout<<′A′;

11.将以下程序写成三目运算表达式是【11】。

if(a>b)max=a; else max=b; 【参考答案】 【11】max=(a>b)?a:b;

12.下面程序的功能是将字符数组a中下标值为偶数的元素从小到大排列,其他元素不变,请填空。

#include #include void main() { char a[]=″clanguage″,t;

int i,j,k;

?k=strlen(a);

?for(i=0;i<=k-2;i+=2)

?for(j=i+2;j<=k;【12】)

?if(【13】)

?{ t=a[i];a[i]=a[j];a[j]=t;}

?cout<

?cout<

【12】j+=2 【13】a[i]>=a[j]或a[i]>a[j]

13.请定义一个函数名为A,返回值为int,没有参数的纯虚函数的定义是【14】。

【参考答案】 【14】virtual int A()=0;

14.假设fin是一个文件流对象,则关闭文件的语句是【15】。

【参考答案】 【15】fin

上机部分 一、改错题

使用VC6打开考生文件夹下的工程kt5_1,此工程包含一个源程序文件kt5_1.cpp,但该程序运行有问

题,请改正程序中的错误,使程序的输出结果如下:

(1,2) 5,6 (6,9)

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

#include classA{ public: A(inti,intj){a=i;b=j;}

/****************found*******************/

voidMove(intx,inty){a+=x;b+=y}

voidShow(){cout<<\

private: inta,b; }; classB:privateA

{ public:

/****************found*******************/

B(inti,intj,intk,intl):(i,j){x=k;y=l;} voidShow(){cout<

voidfun(){Move(3,5);}

/****************found*******************/

voidf1(){Show();}

private: intx,y; };

【参考答案 voidmain()

{ Ae(1,2); e.Show(); Bd(3,4,5,6); d.fun(); d.Show(); d.f1(); } 【参考答案】

(1)将void 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,int l):(i,j) {x=k;y=l;} 改为:B(int i,int j,int k,int l):A(i,j) {x=k;y=l;}

(3)将void f1(){Show();} 改为:void f1(){A::Show();}

【试题解析】

(1)主要考查对表达式定义规则的掌握,此处缺少一个“;”,任何一个表达式都应该以分号作为结束标志;

(2)主要考查对派生类构造函数定义的掌握,参数列表中基类的成员应使用基类构造函数初始化,因此

必须向基类传递参数,传递时直接使用基类名;

(3)主要考查对基类函数调用方法的掌握,为了调用基类的函数应该使用作用域符“::”以限定访问的位

置。 】

二、简单应用题

请编写一个函数intpattern_index(charsubstr[],charstr[]),该函数执行含通配符\的字符串的查找时,该通配符可以与任一个字符匹配成功。当子串substr在str中匹配查找成功时,返回子串substr在str中的位

置,否则返回值为0。要求使用for循环实现。输出结果如下:

子串起始位置:5

注意:部分源程序已存在文件kt5_2.cpp中。

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

文件kt5_2.cpp的内容如下:

#include

intpattern_index(charsubstr[],charstr[])

{ } voidmain()

{

char*substring,*string;

intsame; substring=\

string=\ same=pattern_index(substring,string);

if(same)

cout<<\子串起始位置:\


2010年全国计算机等级考试二级3(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:(已改)因式分解难题经典题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: