6.14

来源:互联网 发布:信息化系统数据库选择 编辑:程序博客网 时间:2024/05/29 10:33

#include<iostream>using namespace std;class container{protected:double radius;public:container(double radius1){radius=radius1;}virtual double surface_area()=0;    virtual double volume()=0;};class cube:public container{public:cube(double radius1):container(radius1){};virtualdouble surface_area(){cout<<"正方体的表面积为:"<<6*radius*radius<<endl;    return 0;}virtualdouble volume(){cout<<"正方体的体积为:"<<radius*radius*radius<<endl;     return 0;}};class sphere:public container{public:sphere(double radius1):container(radius1){}; virtual double surface_area(){cout<<"球的表面积为:"<<4*3.14*radius*radius<<endl;     return 0;} virtual double volume(){cout<<"球的体积为:"<<(4/3)*3.14*radius*radius*radius<<endl;     return 0;}};class cylinder:public container{public:cylinder(double radius1,double h1):container(radius1){h=h1;}  virtual double surface_area(){cout<<"圆柱体的表面积为:"<<2*3.14*radius*(h+radius)<<endl;     return 0;}   virtual double volume(){cout<<"圆柱体的体积为:"<<3.14*radius*radius*h<<endl;     return 0;}private:double h;};int main(){container *p;cube c1(6.0);sphere s1(5.0);cylinder cy(5.0,6.0);p=&c1;p->surface_area();p->volume();p=&s1;p->surface_area();p->volume();p=&cy;p->surface_area();p->volume();return 0;}


0 0