C8-2 圆的周长和面积 (100/100 分数)
题目描述
求圆的周长和面积,已知圆类从shape抽象类继承。
输入描述
输入圆的半径
输出描述
输出圆的周长和面积
样例输入
10
样例输出
314 62.8
代码实现
#include <iostream>
using namespace std;
const double pi = 3.14;
class Shape {
public:
Shape() {}
~Shape() {}
virtual double getArea() = 0;//虚函数
virtual double getPerim() = 0;
};
class Circle : public Shape {
public:
Circle(double rad) :radius(rad) {}
~Circle() {}
/*补充这两个函数*/
virtual double getArea();//覆盖基类虚函数,最好还是加上virtual避免歧义
virtual double getPerim();
private:
double radius;
};
double Circle::getArea()
{
return radius * radius*pi;
}
double Circle::getPerim()
{
return 2 * pi*radius;
}
int main() {
double radius;
cin >> radius;
Circle c(radius);
cout << c.getArea() << " " << c.getPerim() << endl;
return 0;
}
注意
此题较为简单,需注意类外函数的声明问题别出错
double(类型名)Circle(类名):: xxxxx(){};