问题及代码:
/*copyright(c)2016.烟台大学计算机学院
* All rights reserved,
* 文件名称:text.Cpp
* 作者:李一波
* 完成日期:2016年5月9日
* 版本号:vc++6.0
*
* 问题描述: 以Point为基类,派生出一个Circle(圆)类,增加数据成员r(半径),以及求面积的成员函数area,实现其他需要的成员函数,设计main函数完成测试
* 输入描述:
* 程序输出:
*/
#include<iostream>
using namespace std;
#define PI 3.14
class Point
{
public:
Point(int x,int y);
void show();
private:
int x; //横坐标
int y; //纵坐标
};
class Circle:public Point
{
public:
Circle(int r,int x,int y);
double area();
private:
int r; //半径
};
//下面定义类的成员函数
Point::Point(int x,int y)
{
this->x=x;
this->y=y;
}
void Point::show()
{
cout<<x<<' '<<y<<endl;
}
Circle::Circle(int banjing,int x,int y):r(banjing),Point(x,y){}
double Circle::area()
{
return r*r*PI;
}
//下面是测试函数
int main()
{
Point p(10,20);
p.show();
Circle c(2,1,2);
cout<<c.area()<<endl;
return 0;
}
运行结果: