十四周任务三(面积计算)

/*

* 程序的版权和版本声明部分

* Copyright (c)2013, 烟台大学计算机学院学生

* All rightsreserved.

* 文件名称:score.cpp

* 作    者:   刘元龙

* 完成日期: 2013 年5 月 31  日

* 版本号: v1.0

* 输入描述:

* 问题描述:

* 输出:

*/
#include<iostream>
using namespace std;
//空基类
class csolid
{
  public:
  virtual void area()
   {
       cout<<"没和我说信息怎么求:";
   }
  virtual void v()
  {
      cout<<"没和我说信息怎么求!";
  }
};


//正方体类
class cball:public csolid
{
  public:
  cball(double);
  void area();
  void v();
  protected:
  double d;
};
cball::cball(double R)
{
    d=R;
}
void cball::area()
{
    double s;
    s=d*d;
    cout<<"面积为:" <<s<<"    ";
}

void cball::v()
{
    double v;
    v=d*d*d;
    cout<<"体积为:"<<v;
    cout<<endl;
}

//球类
class ccylinder:public csolid
{
    public:
    ccylinder(double);
    void area();
    void v();
    protected:
    double r;
};

ccylinder::ccylinder(double X)
{
    r=X;

}
void ccylinder::area()
{
    double s;
    s=4*3.14*r*r;
    cout<<"面积为:"<< s<<"    ";
}
void ccylinder::v()
{
    double v;
    v=(4/3)*r*r*r;
    cout<<"体积为:"<< v<<endl;
}
//圆柱体
class ccube:public csolid
{
    public:
    ccube(double,double);
    void area();
    void v();
    protected:
    double a,b;
};

ccube::ccube(double X,double Y)
{
    a=X;//圆柱体地面半径
    b=Y;//圆柱体高

}

void ccube::area()
{
    double s;
    s=(3.14*2*a*b)+(2*3.14*a*a);
    cout<<"面积为:"<< s<<"   ";
}

void ccube::v()
{
    double v;
    v=3.14*a*a*b;
    cout<<"体积为:"<< v<<endl;
}
int main()
{
    ccube c1(12,6);
    cball r1(4);
    ccylinder t1(4.5);
    csolid *p=&c1;
    p->area();
    p->v();
    p=&r1;
    p->area();
    p->v();
    p=&t1;
    p->area();
    p->v();
    return 0;
}


运行结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值