实验目的:求圆柱体的表面积和体积并输出
* 程序头部注释开始
* 程序的版权和版本声明部分
* 烟台大学计算机学院学生
* 文件名称:
* 作
* 完成日期:
* 版本号:
* 程序头部的注释结束(此处也删除了斜杠)
#include<iostream>
#include<Cmath>
#include<iomanip>
#define PI 3.141592653
using namespace std;
class Point //定义坐标点类
{
public:
Point(){x = 0;y = 0;}
Point(double x0,double y0) {x = x0; y = y0;}
~Point(){}
double getx(){return x;}
double gety(){return y;}
friend ostream &operator << (ostream & output, Point & c);
protected:
double x, y; //点的横坐标和纵坐标
};
//输出点的坐标信息
ostream &operator << (ostream & out, Point & c)
{
out << "点坐标为:(" << c.x << "," << c.y << ")";
return out;
}
class Circle: public Point //定义圆类
{
public:
Circle(){r = 0;}
Circle(double x0, double y0, double r); //构造函数
~Circle(){};
double getr(){return r;}
friend ostream &operator << (ostream & out, Circle & c);
protected:
double r;
};
Circle::Circle(double x0, double y0, double R):Point(x0, y0),r(R){}
//输出圆的信息
ostream &operator << (ostream & out, Circle & c)
{
out << "所建圆的圆心为:" << "(" << c.getx() << "," << c.gety() << "), " << "半径为:" << c.r ;
return out;
}
class Cylinder: public Circle
{
public:
Cylinder(){height = 0;}
Cylinder(double x1,double y1, double r1, double h);
~Cylinder(){}
double geth(){return height;}
double area();
double volume();
friend ostream &operator << (ostream & out, Cylinder & c);
private:
double height;
};
Cylinder::Cylinder(double x1,double y1, double r1, double h):Circle(x1, y1, r1), height(h){}
//计算圆柱体的面积
double Cylinder::area()
{
return (PI * getr() * getr() + 2 * PI * getr() * height);
}
//计算圆柱体的体积
double Cylinder::volume()
{
return (PI * getr() * getr() * height);
}
//输出圆柱体的信息
ostream &operator << (ostream & out, Cylinder & c)
{
out << "圆心为:" << "(" << c.getx() << "," << c.gety() << "), " << "半径为:" << c.r << ", 高为:" << c.height << "的圆柱体";
return out;
}
int main()
{
Point po(3,6);
Circle ci(3,6,2);
Cylinder cy(3, 6, 2, 4);
cout << po << endl;
cout << ci <<endl;
cout << cy << endl;
cout << setiosflags(ios::fixed) << setprecision(2);
cout << "表面积是:" << cy.area() << endl;
cout << "体积是:" << cy.volume() << endl;
system("pause");
return 0;
}
截图:
点坐标为:(3,6)
所建圆的圆心为:(3,6), 半径为:2
圆心为:(3,6), 半径为:2, 高为:4的圆柱体
表面积是:62.83
体积是:50.27
请按任意键继续. . .
比较难,费了好大劲才做出来!