问题:C++实现:求坐标系中的某一点到原点的距离(使用构造函数)
本程序通过VC++ 6.0编译与测试,具体代码如下:
#include <iostream>
#include <math.h>
using namespace std;
class Circle
{
private:
float xCenter;
float yCenter;
public:
Circle(); //构造函数
void setCircle(float x,float y);
void printCircle();//打印函数
float distance(Circle c1);//计算距离的函数
};
Circle::Circle() //初始化构造函数
{
xCenter=0.0;
yCenter=0.0;
}
void Circle::setCircle(float x,float y)
{
xCenter=x;
yCenter=y;
}
void Circle::printCircle()
{
cout<<"x:"<<xCenter<<",y:"<<yCenter<<endl;
}
float Circle::distance(Circle c1)
{
float x=xCenter-c1.xCenter;//c1初始化后为(0,0)即原点
float y=yCenter-c1.yCenter;
return sqrt(x*x+y*y);
}
int main()
{
Circle c1;
Circle c2;
float a=0.0;
float b=0.0;
cout<<"please input a coordinate point:"<<endl;
cin>>a>>b;
c2.setCircle(a,b);
cout<<"distance between two circle is:"<<c1.distance(c2)<<endl;
return 0;
}