3月计算机二级C++备考习题及答案

上传人:亦*** 文档编号:253508803 上传时间:2022-02-13 格式:DOC 页数:5 大小:17.50KB
返回 下载 相关 举报
3月计算机二级C++备考习题及答案_第1页
第1页 / 共5页
3月计算机二级C++备考习题及答案_第2页
第2页 / 共5页
3月计算机二级C++备考习题及答案_第3页
第3页 / 共5页
3月计算机二级C++备考习题及答案_第4页
第4页 / 共5页
3月计算机二级C++备考习题及答案_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《3月计算机二级C++备考习题及答案》由会员分享,可在线阅读,更多相关《3月计算机二级C++备考习题及答案(5页珍藏版)》请在金锄头文库上搜索。

1、XX年3月计算机二级C+备考习题及答案 对于很多考生来说还是比较有难度的,那么怎样顺利通过二级呢?这就需要大家平时多练习和找方法了。以下是的xx年3月计算机二级C+备考习题及答案,希望对大家有帮助! 使用VC6翻开考生文件夹下的工程kt81,此工程包含一个源程序文件kt81.cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下: f1functionofderive f2functionofbase f4functionofbase 源程序文件kt81.cpp清单如下: #include classbase public: /*found*/ voidf1()coutf1fun

2、ctionofbase virtualvoidf2()coutf2functionofbase virtualvoidf3()coutf3functionofbase voidf4()coutf4functionofbase /*found*/ classderive:publicbase voidf1()coutf1functionofderive voidf2(intx)coutf2functionofderive voidf4()coutf4functionofderivef1(); p-f2(); p-f4(); (1)将void f1() coutf1 function of bas

3、e 改为:virtual void f1() coutf1 function of base (2)将class derive:public base 改为:class derive:public base (3)将p=obj2; 改为:p=&obj2; (1)主要考查对虚函数的深刻理解,虚函数是动态联编的根底,也是实现多态性的重要方法,它可以根据不同的情况动态的选择执行哪一个函数。在派生类中实现虚函数应该满足与基类的同名函数完全相同,并且使用关键字virtual修饰,此题中由输出结果中的f1 function of derive可知,必须将基类base的成员函数f1()定义为虚函数; (2)

4、主要考查对派生类定义格式的掌握,应该使用“:”后面是继承列表,而“:”是作用域符; (3)主要考查类对象的定义与使用,p是一个指针类型的变量,给它的赋值应该是一个地址,即使用取地址操作符&。 使用VC6翻开考生文件夹下的工程kt73,此工程包含一个源程序文件kt73.cpp,其中含有一个类Circle的定义,但该类的定义并不完整。请按要求完成以下操作,将类Circle的定义补充完整。 (1)为类Circle增加一个构造函数,该函数有一个参数,并在构造时将该参数值赋给成员radius。将该函数实现为一个非内联函数,并且使用参数列表的方式将类成员赋值。请在注释“/*1*”之后添加适当的语句。 (2

5、)为类Circle增加一个成员函数print(),使得可以输出有关圆的信息,比方以下程序 Circlec; c.SetRadius(5); c.Print(); 将输出:Thecirclehasradiusof5! 请在注释“/*2*”之后添加适当的语句。 (3)完成友元函数voidCompareR(Circle*c1,Circle*c2)的定义,在屏幕中输出c1与c2比较radius大小结果,要求使用if-else构造完成。请在注释“/*3*”之后添加适当的语句。 输出结果如下: Thecirclehasradusof5! Thecirclehasradiusof10! c1 注意:除在指定

6、位置添加语句之外,请不要改动程序中的其他内容。 源程序文件kt73.cpp清单如下: #include classCircle public: Circle():radius(5) /*1* voidSetRadius(intr)radius=r; intGetRadius()returnradius; /*2* friendvoidCompareR(Circle*c1,Circle*c2); private: intradius; voidCompareR(Circle*c1,Circle*c2) /*3* coutc2GetRadius()=(c2-GetRadius() coutc1=c

7、2GetRadius()GetRadius() coutc1 voidmain() Circlec1;:考试大 c1.SetRadius(5); c1.Print(); Circlec2(10); c2.Print(); CompareR(&c1,&c2); (1)Circle(intrad):radius(rad) (2)voidPrint()coutThecirclehasradiusofGetRadius()(c2-GetRadius() 此题考查成员函数的定义与实现,友元函数,if分支语句等知识点。友元函数的类体外的定义与一般函数一样,其中if-else的使用,else总是与其最近的那个if配对使用的,书写时最好使用缩进格式,将配对的if-else对齐,以免出错。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号