//定义一个Point类,其属性包括点的坐标,提供计算 //两点之间距离的方法 //定义一个Circle类,其属性包括圆心和半径 //创建两个圆形对象,提示用户输入圆心坐标和半径, //判断两个圆是否相交并输出结果 #include<iostream> using namespace std; class Point { public: void setPointt(int _x1, int _y1) { x1 = _x1; y1 = _y1; } int getX1() { return x1; } int getY1() { return y1; } private: int x1; int y1; }; class Circle { public: void setCircle(int _r, int _x0, int _y0) { r = _r; x0 = _x0; y0 = _y0; } //类做函数参数最好用引用 //在圆内返回1,不在圆内返回0 //在成员函数内可以使用c1的私有属性 int judge(Point &p) { int dd; dd = (p.getX1() - x0)*(p.getX1() - x0) + (p.getY1() - y0)*(p.getY1() - y0); if (dd < r*r) { return 1; } else { return 0; } } private: int r; int x0; int y0; }; int main02() { Circle c1; Point p1; int tag; c1.setCircle(2, 3, 3); p1.setPointt(7, 7); //点在圆内为1 不在圆内为0 tag=c1.judge(p1); if (tag == 1) { cout << "在圆内" << endl; } else { cout << "在圆外" << endl; } system("pause"); return 0; }