
一道C++编程各位大哥大姐帮帮小弟!!!!
题目是:请编写一个抽象的类Shape,在此基础上派生出类Rectangle和circle,两者都有计算对象面积的函数GetArea(),周长GetPerim().主函数从...
题目是:请编写一个抽象的类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()<<endl;
cout<<"圆的面积是"<<b.GetArea()<<endl;
cout<<"圆的周长是"<<b.GetPerim()<<endl;
}
这个对么????
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()<<endl;
cout<<"圆的面积是"<<b.GetArea()<<endl;
cout<<"圆的周长是"<<b.GetPerim()<<endl;
}
这个对么????
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询