#include <iostream>
#include <iomanip>
using namespace std;#define PI 3.14class Circle
{
public:Circle(double r):radius(r){ }double area(){return PI*radius*radius;} //圆面积
protected:double radius; //圆半径
};//将程序需要的其他成份写在下面,只提交begin到end部分的代码
//******************** begin ********************class Cylinder:public Circle
{
public:Cylinder(double r,double h):Circle(r),hight(h){ }double area(){return PI*radius*radius*2+PI*2*radius*hight;} //圆面积double volume(){return PI*radius*radius*hight; }
protected:double hight; //圆半径 };//********************* end ********************int main()
{
double r,h;cout<<setiosflags(ios::fixed);
cout<<setprecision(2);cin>>r;
Circle c(r);
cout<<c.area()<<endl;cin>>r>>h;
Cylinder cy(r,h);
cout<<cy.area()<<" "<<cy.volume()<<endl;return 0;
}

定义了Circle圆形类,在此基础上派生出Cylinder圆柱体类。 Circle圆形类定义如下: class Circle { public: Circle(double r):radius(r相关推荐

  1. 虚函数之定义一个基类Shape,在此基础上派生出Rectangle和Circle再使用Rectangle类创建一个派生类Square。

    定义一个基类Shape,在此基础上派生出Rectangle和Circle,二者都有getArea( )函数计算对象的面积,再使用Rectangle类创建一个派生类Square.将getArea()改造 ...

  2. 定义一个基本的银行账户类。在基本账户类的基础上派生出1年期定期账户、2年期定期账户、3年期定期账户和5年期定期账户。定义一个n个基类指针组成的数组,随机生成n个各类派生类的对象。让每个指针指向一个派生

    定义一个基本的银行账户类.在基本账户类的基础上派生出1年期定期账户.2年期定期账户.3年期定期账户和5年期定期账户.定义一个n个基类指针组成的数组,随机生成n个各类派生类的对象.让每个指针指向一个派生 ...

  3. 定义一个基类Shape,在此基础上派生出Rectangle和Circle,二者都有getArea( )函数计算对象的面积,再使用Rectangle类创建一个派生类Square。

    输入格式 Rectangle的长和宽.Circle的半径.Square的边长 输出格式 Rectangle.Circle和Square对应的面积.四舍五入到整数 输入样例 3 7 6 4 2.1 3. ...

  4. 请编写一个抽象类shape,在此基础上派生出类rectangle和circle。二者都有计算对象面积的函数getarea(),计算对象的周长的函数getperim();

    具体代码如下: #include <iostream> using namespace std; class shape{ public:virtual double getarea()= ...

  5. 编写一个程序,定义抽象基类Shape,由它派生出5个派生类:Circle(圆形)、Square(正方形)、Rectangle(矩形)、Trapezoid(梯形)、Triangle(三角形)。用虚函数分

    编写一个程序,定义抽象基类Shape,由它派生出5个派生类:Circle(圆形).Square(正方形).Rectangle(矩形).Trapezoid(梯形).Triangle(三角形).用虚函数分 ...

  6. 1.使用适配器模式设计一个仿生机器人:要求机器人可以模拟各种动物行为,在机器人中定义了一系列方法,如机器人发声方法talk(),机器人移动方法move()等。如果希望在不改变已有Bird类代码的基础上

    1.使用适配器模式设计一个仿生机器人:要求机器人可以模拟各种动物行为,在机器人中定义了一系列方法,如机器人发声方法talk(),机器人移动方法move()等.如果希望在不改变已有Bird类代码的基础上 ...

  7. 习题 12.5 编写一个程序,定义抽象基类Shape,由它派生出5个派生类:Cricle,Square, Rectangle, Trapezoid ,Triangle。用虚函数分别计算图形面积。

    习题 12.5 编写一个程序,定义抽象基类Shape,由它派生出5个派生类:Cricle,Square, Rectangle, Trapezoid ,Triangle.用虚函数分别计算图形面积,并求所 ...

  8. 定义Staff(员工)类,由Staff分别派生出Saleman(销售员)类和Manager(经理)类,再由Saleman(销售员)类和Manager(经理)类采用多重继承方式派生出新类SaleMana

    定义Staff(员工)类,由Staff分别派生出Saleman(销售员)类和Manager(经理)类,再由Saleman(销售员)类和Manager(经理)类采用多重继承方式派生出新类SaleMana ...

  9. cpp课程设计实验题:定义Staff(员工)类,由Staff分别派生出Saleman(销售员)类和Manager(经理)类,再由Saleman(销售员)类和Manager(经理)类采用多重继承方式派生

    ``定义Staff(员工)类,由Staff分别派生出Saleman(销售员)类和Manager(经理)类,再由Saleman(销售员)类和Manager(经理)类采用多重继承方式派生出新类SaleMa ...

最新文章

  1. javah生成JNI头文件
  2. asp net code
  3. 关于OpenGL环境配置问题(2015)
  4. 句柄操作窗体_winform让窗体一直显示在桌面上以及FindWindow
  5. Android系统匿名共享内存Ashmem(Anonymous Shared Memory)在进程间共享的原理分析
  6. LeetCode之两数之和
  7. IP头TCP头的checksum校验和计算
  8. nagios的实时监控
  9. 实现Qt日志功能并输出到文件(qDebug\qWarning\ qCritical\qFatal)
  10. JavaSE学习--正则表达式
  11. 删除专利模板文件的最后一页(WPS亲测可用)
  12. 厘米换算英尺英寸(C语言程序设计)
  13. 桌面应用程序软件开发语言_开发多语言软件应用程序的技巧
  14. syntastic 和 pathogen 安装使用
  15. python画图心形_通过matplotlib绘制心形
  16. 机器学习中的数学——随机变量
  17. LOL代练检测——2019腾讯游戏安全技术竞赛决赛记录
  18. Mysql基础之natural 自然连接
  19. DDL,DML,DCL
  20. 国外顶级软件开发工具和平台汇总

热门文章

  1. 【docker】镜像
  2. “书生”通用视觉技术体系发布!附全球人才招聘
  3. 学生认证免费使用pycharm专业版
  4. 树-生成树-最小生成树
  5. 如何撤销命令make install的安装结果,或者如何卸载Linux 库library ?
  6. [HTML]入门小知识,列表?框架?表格?来吧。纯手工制作,满满都是智慧
  7. 什么是OTG,手机OTG的用途
  8. 代码随想录算法训练营第一天 704 二分查找、27 移除元素
  9. golang gopher-lua 遍历table元素
  10. Github常用英文翻译