第十周实验报告 任务三(改)
来源:互联网 发布:知乎上传图片 编辑:程序博客网 时间:2024/05/28 04:54
源程序:
#include<iostream>#include<Cmath>//#define P 3.14 宏定义是c语言里的····const double P = 3.14;//c++应该用constusing namespace std;class Point //定义坐标点类{protected:double x, y; //点的横坐标和纵坐标public:Point(){x=0;y=0;}Point(double x0, double y0);~Point();double getx();double gety();}; class Circle: public Point//定义圆类{protected:double r;//定义圆的半径public:Circle(){x=0; y=0; r=0;}Circle(double x0, double y0, double r0);~Circle();double getr();double Area();double Grith();};class Cylinder:public Circle//定义圆柱类{protected:double h;//定义圆柱类的高public:Cylinder(){x=0; y=0; r=0; h=0;}Cylinder(double x0, double y0, double r0, double h0);~Cylinder();double geth();double Volume();double WArea();friend istream& operator >> (istream& input, Cylinder &c1);friend ostream& operator << (ostream& output, Cylinder &c1);};Point::Point(double x0, double y0):x(x0), y(y0){}Point::~Point(){}double Point::getx(){return x;}double Point::gety(){return y;}Circle::Circle(double x0, double y0, double r0):Point(x0, y0),r(r0){}Circle::~Circle(){}double Circle::getr(){return r;}double Circle::Area(){return P * getr() * getr();}double Circle::Grith(){return P * getr() * 2;}Cylinder::Cylinder(double x0, double y0, double r0, double h0):Circle(x0, y0, r0), h(h0){}Cylinder::~Cylinder(){}double Cylinder::geth(){return h;}double Cylinder::Volume(){return Area() * h;}double Cylinder::WArea(){return (2 * Area() + Grith() * h);}istream& operator >> (istream& input, Cylinder &c1){char f;while(1){cout << "请输入一个圆柱底面○的圆心坐标(x和y之间用','隔开):";input >> c1.x >> f >> c1.y;if(f != ','){cout << "输入格式有误。。。" << endl;}elsebreak;}cout << "请输入一个圆柱底面○的半径:";input >> c1.r;cout << "请输入一个圆柱的高:";input >> c1.h;return input;}ostream& operator << (ostream& output, Cylinder &c1){output << "圆柱底面○的圆心为:" << "(" << c1.getx() << "," << c1.gety() << ")" << endl;output << "圆柱底面○的半径为:" << c1.getr() << endl;output << "圆柱底面○的面积为:" << c1.Area() << endl;output << "圆柱底面○的周长为:" << c1.Grith() << endl;output << "圆柱的高为:" << c1.geth() <<endl;output << "圆柱的表面积为:" << c1.WArea() << endl;output << "圆柱的体积为:" <<c1.Volume() << endl;return output;}int main(){Cylinder c;cin >> c;cout << c;system("pause");return 0;}
截图:
- 第十周实验报告 任务三(改)
- 第十周实验报告 任务三
- 第十周实验报告(任务三)【派生类2】
- 第八周实验报告 任务三(改)
- 第十六周实验报告 任务三(改)
- 第十周实验报告(任务1)
- 第十周实验报告(任务3)
- 第十周实验报告(任务2)
- 第十周实验报告(三)
- 第十周实验报告(三)
- 第十周实验报告(三.1)
- 第十周C++实验报告(三)
- 第十周实验报告三
- 第十周实验报告三
- 第十二周实验报告(任务三)
- 第十三周实验报告(任务三)
- 第十五周实验报告(任务三)
- 第十七周实验报告(任务三)
- session实现方式
- 请求转发与重定向!!*
- Java中的异常处理机制的简单原理和应用
- 邮箱判断正则表达式
- 第10周实验报告2
- 第十周实验报告 任务三(改)
- C++ dlopen mini HOWTO
- OSB实战开发【一】Oracle Service Bus的安装
- 使用Linux的rsync命令实现:多服务器镜像同步
- 面向对象程序设计课堂笔记
- WM_SETICON的一点注意
- 选择排序
- 代码坏味道——重构
- CMake使用方法