第十三周实验报告(四)
2012-05-28 18:05
330 查看
/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称: * 作 者:鲍增凯 * 完成日期: 2012 年 5 月 28 日 * 版 本 号: * 对任务及求解方法的描述部分 * 输入描述: * 问题描述: * 程序输出: * 程序头部的注释结束 */ #include <iostream> using namespace std; class CSolid { public: virtual double area()const=0; virtual double volume()const=0; }; class CCube:public CSolid { public: CCube(double a):x(a){} double area()const; double volume()const; private: double x; }; double CCube ::area()const { cout << (6*x*x); return 0; } double CCube ::volume()const { cout<<(x*x*x); return 0; } class CBall:public CSolid { public: CBall(double r):R(r){} double area()const; double volume()const; private: double R; }; double CBall ::area()const { cout<< (4*3.1415926*R*R); return 0; } double CBall ::volume()const { cout<< (4*R*R*R/3); return 0; } class CCylinder:public CSolid { public: CCylinder(double r,double h):R(r),H(h){} double area()const; double volume()const; private: double R,H; }; double CCylinder ::area()const { cout<< (2*3.1415926*R*R+2*3.1415926*R*H); return 0; } double CCylinder ::volume()const { cout<< 3.1415926*R*R*H; return 0; } int main() { CSolid *p; CCube cCube(3); p=&cCube; cout<<"正方体面积为:"; p->area(); cout<<"体积为:"; p->volume (); cout<<endl; CBall cBall(4); p=&cBall; cout<<"球面积为:"; p->area(); cout<<"体积为:"; p->volume (); cout<<endl; CCylinder cCylinder(2,5); p=&cCylinder; cout<<"圆柱体面积为:"; p->area(); cout<<"体积为:"; p->volume (); cout<<endl; system("pause"); return 0; }
相关文章推荐
- 第十三周实验报告2
- 第十三周实验报告 任务二(3)
- 第十三周实验报告1.2
- 《C++第十三周实验报告4-1》---设计一个抽象类CSolid,含有两个求表面积及体积的纯虚函数。 设计个派生类CCube、CBall、CCylinder,分别表示正方体、球体及圆柱体。
- 第十三周实验报告(一)用自己的话总结对虚函数、多态性和抽象类的理解
- 第十三周实验报告3
- 第十三周实验报告(3)
- 第十三周实验报告4
- 第十三周实验报告一
- 第十三周实验报告3
- 第十三周实验报告》报告2. (2011-11-20 16:43
- 第十三周实验报告(任务一)【虚函数、多态性、抽象类】
- 第十三周实验报告3
- 第十三周实验报告 任务三
- 第十三周实验报告(4)
- (补)第十三周实验报告(2)
- 第十三周实验报告2
- 第十三周实验报告(2)
- 第十三周实验报告4
- 第十三周实验报告 任务四