2012年 上半年 第十周 C++程序设计 (三十三)
来源:互联网 发布:qq刷钻软件制作 编辑:程序博客网 时间:2024/05/16 13:43
#include<Cmath> #define pi 3.1415926using namespace std;class Point //定义坐标点类 { public: double x,y; //点的横坐标和纵坐标 Point(){x=0;y=0;} Point(double x0,double y0) {x=x0; y=y0;} ~Point () { system("pause"); } double get_x(){return x;} double get_y(){return y;} friend ostream &operator << (ostream & output, Point & c); }; class Circle: public Point //利用坐标点类定义圆类, 其基类的数据成员表示圆的中心 { private: double d; public: Circle(double xx,double yy,double dd): Point(xx,yy) ,d(dd){} //构造函数 ~Circle() { } friend ostream &operator << (ostream & output, Circle & c); double get_d(){return d;} }; class Cylinder: public Circle { private: double h; public: Cylinder(double xx,double yy,double dd,double hh): Circle (xx,yy,dd),h(hh){} //构造函数 ~Cylinder() { } friend ostream &operator << (ostream & output,Cylinder & c); double get_h(){return h;} double superficial_area(); //表面积 double volume(); //体积 };ostream &operator << (ostream & output, Point & c) { output<<"点的横坐标为:"<<c.x<<" "<<"点的纵坐标为:"<<c.y<<endl; return output; } ostream &operator << (ostream & output, Circle & c) { output<<"圆的半径为:"<<c.get_d()<<"圆的圆心为"<<"("<<c.get_x()<<","<<c.get_y()<<")"<<endl; return output; } ostream &operator << (ostream & output,Cylinder & c) { output<<"圆的高为:"<<c.get_h()<<"圆的半径为:"<<c.get_d()<<"圆的圆心为"<<"("<<c.get_x()<<","<<c.get_y()<<")"<<endl; return output; } double Cylinder::superficial_area() //表面积 { double s; s=2*pi*get_d()*get_d()+2*pi*get_d()*get_h(); return s; } double Cylinder::volume() //体积 { double v; v=pi*get_d()*get_d()*get_h(); return v; } int main() { Point p(1,1); cout<<p; Circle ci(1,2,6); cout<<ci; Cylinder cy(1,2,3,4); cout<<cy; cout<<"圆柱的体积为:"<<cy.volume ()<<endl; cout<<"圆柱的表面积为:"<<cy.superficial_area ()<<endl; system("pause"); return 0; }
运行结果
点的横坐标为:1 点的纵坐标为:1圆的半径为:6圆的圆心为(1,2)圆的高为:4圆的半径为:3圆的圆心为(1,2)圆柱的体积为:113.097圆柱的表面积为:131.947请按任意键继续. . .
- 2012年 上半年 第十周 C++程序设计 (三十三)
- 2012年 上半年 第十周 C++程序设计 (三十一)
- 2012年 上半年 第十周 C++程序设计 (三十二)
- 2012年 上半年 第十四周 C++程序设计 (四十一)
- 2012年 上半年 第十四周 C++程序设计 (四十二)
- 2012年 上半年 第二周 C++ 程序设计 (二)
- 2012年 上半年 第二周 C++程序设计 (三)
- 2012年 上半年 第三周 C++程序设计 (四)
- 2012年 上半年 第三周 C++程序设计 (五)
- 2012年 上半年 第三周 C++程序设计 (六)
- 2012年 上半年 第三周 C++程序设计 (七)
- 2012年 上半年 第五周 C++程序设计 (十一)
- 2012年 上半年 第五周 C++程序设计 (十二)
- 2012年 上半年 第五周 C++程序设计 (十三)
- 2012年 上半年 第六周 C++程序设计 (十五)
- 2012年 上半年 第六周 C++程序设计 (十六)
- 2012年 上半年 第六周 C++程序设计 (十七)
- 2012年 上半年 第六周 C++程序设计 (十八)
- struts获取常量配置信息
- 为什么iOS应用比Android应用更好看
- 云计算:程序员重回个人英雄时代
- 美国云计算印象
- queue(3)--freebsd中的queue结构使用
- 2012年 上半年 第十周 C++程序设计 (三十三)
- tomcat+mysql数据库连接池的操作
- 如何理解 async 和await 设计模式 和如何应用到.net 4以下的framework
- 《计算机组成原理》第05章在线测试
- Android---自定义带CheckBox的ListView实现
- 分卷压缩和分卷解压
- JavaScript中的闭包
- QTreeView对象如何设置行高(Row Height)?
- NAT的完全分析及其UDP穿透的完全解决方案