一道C++编程各位大哥大姐帮帮小弟!!!!

来源:百度知道 编辑:UC知道 时间:2024/06/19 23:26:42
题目是:请编写一个抽象的类Shape,在此基础上派生出类Rectangle和circle,两者都有计算对象面积的函数GetArea(),周长GetPerim().主函数从键盘输入长和宽,算矩形的面积。

#include<iostream.h>

class shape
{ public:
virtual float GetArea()=0;
virtual float GetPerim()=0;
};

class Rectangle:public shape
{ private:
float lenght,widht,area,perim;

public:
Rectangle(float l,float w){ lenght=l;widht=w;}
float GetArea();
float GetPerim();
};

float Rectangle::GetArea()
{ return area=(lenght*widht);}

float Rectangle::GetPerim()
{ return perim=2*(lenght+widht);}

class Circle:public shape
{ private:
float radius,area,perim;

public:
Circle(float x){ radius=x;}
float GetArea(){return perim=3.14*2*radius;}
float GetPerim(){ return area=3.14*radius*radius;}
};

void main()
{ Rectangle a(20,40);
Circle b(3);
cout<<"矩形的面积是"<<a.GetArea()<<endl;
cout<<"矩形的周长是"<<a.GetPerim()<<