《面向对象程序设计C++》期末试卷及标准答案(B)(2)

2019-01-07 18:40

d3.display(); d4.display(); return 0; } 3、#include

using namespace std; class A { public:

A(){cout<<\ ~A(){cout<<\

class B: public A { public:

B(){cout<<\ ~B(){cout<<\

class C : public B { public:

C(){cout<<\ ~C(){cout<<\

int main() { C c1; return 0;

}

四、编程题(共27分)

1、(10分) 已知复数类Complex的声明如下: class Complex {public:

Complex(); //无参构造函数 Complex(double ); //转换构造函数

第 6 页

Complex(double, double);//有两个形参的构造函数

friend Complex operator+(Complex&, Complex&); //对“+”运算符进行重载 friend ostream& operator<<(ostream&, Complex&); //对“<<”运算符进行重载 friend istream& operator>>(istream&, Complex&); //对“>>”运算符进行重载 private:

double real,imag; };

要求:(1)写出该类的所有构造函数的类外定义代码。

(2)写出对运算符“+”、“<<”、“>>”进行重载的运算符重载函数的定义。 Complex::Complex(){real=0;imag=0;} Complex::Complex(double r){real=r;}

Complex::Complex(double r,double i){real=r;imag=i;} Complex operator+(Complex &c1,Complex &c2) { Complex c;

c.real=c1.real+c2.real; c.imag=c1.imag+c2.imag; return c; }

ostream& operator << (ostream& output,Complex& c) { output<<\ return output; }

istream& operator >> (istream& input,Complex& c)

{ cout<<\ input>>c.real>>c.imag; return input; }

第 7 页

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

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

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

要求:(1)从Shape类派生圆类(Circle)、正方形类(Square),圆类新增数据成员半径(radius),正方形类新增数据成员边长(a),圆类和正方形类都有构造函数,修改、显示数据成员值的函数,求面积函数。

(2)写出main()函数,计算半径为5.5的圆和边长为9.9的正方形的面积和(必须通过调用total函数计算)。

class Circle:public Shape {public:

Circle(double r){radius=r;}

virtual double area()=0;

return sum;

void set()

{ cout<<\ }

第 8 页

cin>>radius;

void show()

{ cout<<\

}

double area() {return 3.14159*radius*radius;} private: };

class Square:public Shape {public:

Square(double a){this->a=a;}

void set()

{ cout<<\ }

cin>>a; double radius;

void show()

{ cout<<\

}

double area(){return a*a;} private: }; int main() {

double a;

Circle C(5.5); C.show(); Square S(9.9); S.show();

Shape *s[]={&C,&S};

cout<<\

第 9 页

}

return 0;

第 10 页


《面向对象程序设计C++》期末试卷及标准答案(B)(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2018年信用社稽核审计工作总结-实用word文档(2页)

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

马上注册会员

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