第十四周 项目3-立体类族共有的抽象类
2014-05-27 14:39
429 查看
/* * 程序的版权和版本声明部分 * Copyright (c)2013, 烟台大学计算机学院学生 * All rightsreserved. * 作 者: 初瑞 * 完成日期:2014年5月27日 * 版本号: v1.0 * 输入描述:无 * 问题描述:输出表面积和体积 */ #include <iostream> using namespace std; #define PI 3.1415926 class CSolid//声明抽象基类shape { public: virtual double area()=0;//表面积 virtual double volume()=0;//体积 }; class CCube:public CSolid//声明CCube类(正方体) { public: CCube(double l):length(l){} virtual double area()//面积 { return 6*length*length; } virtual double volume()//体积 { return length*length*length; } private: double length; }; class CBall:public CSolid//声明CBall类(球体) { public: CBall(double r):radius(r){} virtual double area()//面积 { return 4*PI*radius*radius; } virtual double volume()//体积 { return PI*radius*radius*radius*4/3; } private: double radius; }; class CCylinder:public CSolid//声明CCylinder类(圆柱体) { public: CCylinder(double r,double h):radius(r),heigth(h){} virtual double area()//面积 { return 2*2*PI*radius+2*PI*radius*heigth; } virtual double volume()//体积 { return PI*radius*radius*heigth; } private: double radius,heigth; }; int main() { int n,m,x,y; CSolid *p;//基类 cout<<"请输入正方体的长"<<endl; cin>>n; CCube a(n); cout<<"正方体的长为"<<n<<endl; p=&a; cout<<"该正方体的表面积:"<<p->area()<<endl; cout<<"该正方体的体积:"<<p->volume()<<endl; cout<<endl; cout<<"请输入球体的长"<<endl; cin>>m; CBall b(m); cout<<"球体半径为"<<m<<endl; p=&b; cout<<"该球体的表面积:"<<p->area()<<endl; cout<<"该球体的体积:"<<p->volume()<<endl; cout<<endl; cout<<"请输入圆柱体的长"<<endl; cin>>x>>y; CCylinder c(x,y); cout<<"圆柱体底面半径、高分别为"<<x<<","<<y<<endl; p=&c; cout<<"该圆柱体的表面积:"<<p->area()<<endl; cout<<"该圆柱体的体积:"<<p->volume()<<endl; return 0; }
运算结果:
心得体会:easy
相关文章推荐
- 第十四周 【项目3-立体类族共有的抽象类】
- 第十四周项目3-立体类族共有的抽象类
- 第十四周项目3-立体类族共有的抽象类
- 第十四周上机实践项目——立体类族共有的抽象类
- 第十四周——项目3 立体类族共有的抽象类
- 第十四周项目四立体类族共有的抽象类
- 第十三周 项目3-立体类族共有的抽象类
- 第十三周项目三——立体类族共有的抽象类
- 第13周项目3-立体类族共有的抽象类
- 项目3-立体类族共有的抽象类
- 第13周项目3—立体类族共有的抽象类
- 15第十三周项目三——立体类族共有的抽象类
- 第十三周 项目3-立体类族共有的抽象类
- 第十三周项目二——立体类族共有的抽象类
- 第十三周项目3-立体类族共有的抽象类
- 第13周上机实践项目3——立体类族共有的抽象类
- 第十三周项目三:立体类族共有的抽象类
- 第12周-项目3-立体类族共有的抽象类
- 第13周-多态性-项目3-立体类族共有的抽象类
- 第十三周项目3-立体类族共有的抽象类