第六周项目1-体验常成员函数
2014-04-02 19:46
225 查看
/* * 程序的版权和版本声明部分 * Copyright (c)2013, 烟台大学计算机学院学生 * All rightsreserved. * 文件名称:.cpp * 作 者:王英华 * 完成日期:2014年4月 2日 * 版本号: v1.0 * 输入描述: * 问题描述: */ #include<iostream> #include<cmath> using namespace std; class CPoint { private: double x; // 横坐标 double y; // 纵坐标 public: CPoint(double xx=0,double yy=0); double Distance1(CPoint p) const; // 两点之间的距离(一点是当前点,另一点为参数p) double Distance0() const; // 到原点的距离 CPoint SymmetricAxis(char style)const;//style取'x','y'和'o'分别表示按x轴, y轴, 原点对称 void input(); //以x,y 形式输入坐标点 void output(); //以(x,y) 形式输出坐标点 }; CPoint::CPoint(double xx,double yy) { x=xx; y=yy; } double CPoint::Distance1(CPoint p) const { double m; m=sqrt((p.x-x)*(p.x-x)+(p.y-y)*(p.y-y)); return m; } double CPoint::Distance0() const { double n; n=sqrt(x*x+y*y); return n; } CPoint CPoint::SymmetricAxis(char style)const { CPoint p(x,y); if(style=='x') p.y=-y; else if(style=='y') p.x=-x; else if(style=='o') { p.x=-x; p.y=-y; } return p; } void CPoint::input() { cout<<"请输入一个点的坐标(形如x,y):"; cin>>x>>y; } void CPoint::output() { cout<<"("<<x<<","<<y<<")"<<endl; } int main() { CPoint p1,p3; CPoint p2(5,4); p1.input(); cout<<"p1到原点的距离为:"<<p1.Distance0()<<endl; cout<<"p1,p2两点之间的距离为:"<<p1.Distance1(p2)<<endl; cout<<"p1关于x轴对称的点的坐标为:"; p3= p1.SymmetricAxis('x'); p3.output(); cout<<"p1关于y轴对称的点的坐标为:"; p3=p1.SymmetricAxis('y'); p3.output(); cout<<"p1关于原点对称的点的坐标为:"; p3=p1.SymmetricAxis('o'); p3.output(); return 0; }
运行结果:
心得体会:输入的时候,加了个, 结果输出老错。。。
相关文章推荐
- 第六周 项目一 体验常成员函数
- 第六周项目1 体验常成员函数
- 第六周项目一-体验常成员函数
- 第六周(项目一)——体验常成员函数。
- 第六周项目1体验常成员函数
- 第六周 项目1 体验常成员函数
- 第六周 项目一 体验常成员函数
- 第六周项目一体验常成员函数
- 第六周项目一-体验常成员函数
- 第二学期第六周项目1--体验常成员函数
- 第五周项目一:体验常成员函数
- 第五周项目一 体验常成员函数
- 第五周项目1-体验常成员函数
- 第六周项目一(2):深复制体验
- 第六周项目1.1 深复制体验——补充注释
- 第六周上机实践项目1——深复制体验(3)
- 第六周项目1(1)-深复制体验
- 第六周 项目一 深复制体验——为类A增加复制构造函数
- 七周 项目2 体验常成员函数
- 第六周项目一 深复制体验(3)