云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 《面向对象程序设计C 》期末试卷(A)10-11

《面向对象程序设计C 》期末试卷(A)10-11

  • 62 次阅读
  • 3 次下载
  • 2025/6/15 19:52:56

-------------各类专业好文档,值得你下载,教育,管理,论文,制度,方案手册,应有尽有--------------

A D B C E A B D C F

图1 类的继承层次图

图2 多重继承

5、在图2所示的继承层次结构中,如果只想在公共派生类D中保留公共基类A的成员一份,就必须使用关键字virtual把这个公共基类A声明为 。 6、如果一个类包含一个或多个纯虚函数,则该类称为 。 7、从实现的角度来讲,多态性可以划分为两类: 和 。 8、列出C++中的两种代码复用方式: 和 。 9、假定A是一个类名,则该类的复制构造函数的原型声明语句为: 。 10、若要把void fun()定义为类A的友元函数,则应在类A的定义中加入语句 。

11、后置自减运算符“- -”重载为类的成员函数(设类名为A)的形式为: 。 三、阅读下面3个程序,写出程序运行时输出的结果。(共15分) (注意:此题的答案要写在答题纸上,作答时请写清题号) 1、

#include using namespace std; void fun(int &a, int &b) { int p;

p=a; a=b; b=p; }

void exchange(int &a, int &b, int &c) { if( a

int main()

{ int a=11,b=88,c=66;

-------------各类专业好文档,值得你下载,教育,管理,论文,制度,方案手册,应有尽有--------------

-------------各类专业好文档,值得你下载,教育,管理,论文,制度,方案手册,应有尽有--------------

exchange(a, b, c);

cout<<\ return 0; } 2、

#include using namespace std; class A {public:

A(){cout<<\

virtual ~A(){cout<<\};

class B: public A {public:

B(int i)

{ cout<<\ buf=new char[i]; }

virtual ~B()

{ delete []buf;

cout<<\} private:

char *buf; };

int main()

{ A *a=new B(15);

delete a; return 0; } 3、

#include using namespace std; class Toy { public:

Toy(){ strcpy(name, \

Toy(char* _n){ strcpy(name, _n); count++;} ~Toy() { count--;}

-------------各类专业好文档,值得你下载,教育,管理,论文,制度,方案手册,应有尽有--------------

-------------各类专业好文档,值得你下载,教育,管理,论文,制度,方案手册,应有尽有--------------

char* GetName(){ return name; } static int getCount(){ return count; } private:

char name[10]; static int count; };

int Toy::count=0; int main(){

Toy t1,t2(\

cout<

Toy t3, t4(\

cout<

cout<

四、编程题(25分)

(注意:此题的答案要写在答题纸上,作答时请写清题号)

1、(8分)在下面的C++源程序文件main.cpp中,定义了一个用于表示日期的类Date,但类Date的定义并不完整,请按要求完成下列操作,将类Date的定义补充完整。 (1)定义私有数据成员year,month和day分别用于表示年,月,日,它们都是int型的数据。请在①处添加适当的语句。

(2)完成默认构造函数Date的定义,使Date对象的默认值为:year=1,month=1,day=1,请在②处添加适当的语句。

(3)完成重载构造函数Date(int y, int m, int d)的定义,把数据成员year,month和day分别初始化为参数y,m,d的值,请在③处添加适当的语句。

(4)完成成员函数print的类外定义,使其以“年-月-日”的格式将Date对象的值输出到屏幕上.请在注释请在④处添加适当的语句。 C++源程序文件main.cpp清单如下: //main.cpp

-------------各类专业好文档,值得你下载,教育,管理,论文,制度,方案手册,应有尽有--------------

-------------各类专业好文档,值得你下载,教育,管理,论文,制度,方案手册,应有尽有--------------

#include using namespace std; class Date{ public:

 ②  Date(int y,int m,int d)  {

 ③  }

 void print() const; private:

 // date members

 ① };

void Date::print() const {

④ }

int main()

{ Date national_day(1949,10,1);  national_day.print();  return 0; }

2、(9分)下列Shape类是一个表示形状的抽象类,area( )为求图形面积的函数,total( )则是一个用以求不同形状的图形面积总和的普通函数。 class Shape {public: virtual double area()=0; };

double total(Shape *s[ ], int n) { double sum=0.0;

for(int i=0; iarea( ); return sum; }

要求:(1)从Shape类派生圆类(Circle),圆类新增数据成员半径(radius),圆类的成员函数根据题目需要自定。

-------------各类专业好文档,值得你下载,教育,管理,论文,制度,方案手册,应有尽有--------------

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

-------------各类专业好文档,值得你下载,教育,管理,论文,制度,方案手册,应有尽有-------------- A D B C E A B D C F 图1 类的继承层次图 图2 多重继承 5、在图2所示的继承层次结构中,如果只想在公共派生类D中保留公共基类A的成员一份,就必须使用关键字virtual把这个公共基类A声明为 。 6、如果一个类包含一个或多个纯虚函数,则该类称为 。 7、从实现的角度来讲,多态性可以划分为两类: 和 。 8、列出C++中的两种代码复用方式: 和

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com