问题 A: B 继承 圆到圆柱体
题目描述
定义了Circle圆形类,在此基础上派生出Cylinder圆柱体类。
Circle圆形类定义如下:
class Circle
{
public:
Circle(double r):radius(r){ }
double area(){return PI*radius*radius;} //圆面积
protected:
double radius; //圆半径
};
请在下面的程序段基础上完成整个设计。
在主程序中输出指定半径的圆的面积(area),输出指定圆底半径和高的圆柱体表面积(area)和体积(volume)。
#include <iostream>
#include <iomanip>
using namespace std;
#define PI 3.14
class Circle
{
public:
Circle(double r):radius(r){ }
double area(){return PI*radius*radius;} //圆面积
protected:
double radius; //圆半径
};
//将程序需要的其他成份写在下面,只提交begin到end部分的代码
//******************** begin ********************
//********************* 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;
}
输入
圆的半径
圆柱体圆底半径 和 圆柱体的高
输出
圆的面积
圆柱体的表面积 和 体积
样例输入
copy
1
2 2.5
Made by hxl.
样例输出
3.14
56.52 31.40
提示
只提交begin到end部分的代码
#include <iostream>
#include <iomanip>
using namespace std; #define PI 3.14 class Circle
{
public:
Circle(double r):radius(r) { }
double area()
{
return PI*radius*radius; //圆面积
}
protected:
double radius; //圆半径
}; class Cylinder:public Circle
{
public:
Cylinder(double r, double h):Circle(r), height(h) {}
double area() {
return PI*radius*radius*2 + PI*2*radius*height;
}
double volume() {
return PI * radius * radius * height;
}
private :
double height;
}; 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;
}
问题 A: B 继承 圆到圆柱体的更多相关文章
- YTU 2621: B 继承 圆到圆柱体
2621: B 继承 圆到圆柱体 时间限制: 1 Sec 内存限制: 128 MB 提交: 313 解决: 240 题目描述 定义了Circle圆形类,在此基础上派生出Cylinder圆柱体类. ...
- 瘋子C++笔记
瘋耔C++笔记 欢迎关注瘋耔新浪微博:http://weibo.com/cpjphone 参考:C++程序设计(谭浩强) 参考:http://c.biancheng.net/cpp/biancheng ...
- 南京邮电大学java程序设计作业在线编程第七次作业
王利国的"Java语言程序设计第7次作业(2018)"详细 主页 我的作业列表 作业结果详细 总分:100 选择题得分:60 1. 下列叙述中,错误的是( ). A.Java中, ...
- 【Java】 语言基础习题汇总 [2] 面向对象
30 面向对象的三条主线和面向对象的编程思想? 类与类的成员 : 属性.方法.构造器.代码块.内部类. 面向对象的三大特征:封装.继承.多态[如果还有一个,那就是抽象] 关键字:this.super. ...
- DirectX11 With Windows SDK--07 添加光照与常用几何模型
前言 对于3D游戏来说,合理的光照可以让游戏显得更加真实.接下来会介绍光照的各种分量,以及常见的光照模型.除此之外,该项目还用到了多个常量缓冲区,因此还会提及HLSL的常量缓冲区打包规则以及如何设置多 ...
- "类"的讲稿
-----------------------面向对象基础------------------------------------方法(函数) { (c#p10为主,p27;javap96)+资料,讲 ...
- JavaSE编码试题强化练习7
1.编写应用程序,创建类的对象,分别设置圆的半径.圆柱体的高,计算并分别显示圆半径.圆面积.圆周长,圆柱体的体积. /** * 圆类 */ public class Circle { /** * 类属 ...
- DirectX11 With Windows SDK--07 添加光照与常用几何模型、光栅化状态
原文:DirectX11 With Windows SDK--07 添加光照与常用几何模型.光栅化状态 前言 对于3D游戏来说,合理的光照可以让游戏显得更加真实.接下来会介绍光照的各种分量,以及常见的 ...
- C++学习笔记-继承
类之间可以建立联系,这就使得类可以有某种关系 类之间的关系 has-A:包含关系,一个类使用另一个已经定义好的类的数据 uses-A:使用关系,友元或者对象参数传递 is-A:是的关系,这就是继承,具 ...
随机推荐
- Quartz和TopShelf Windows服务作业调度
上一次写了一遍关于Quartz作业调度的文章 Quartz.NET 作业调度使用 现在使用TopShelf和Quartz实现windows服务作业调度 TopShelf版本4.0 Quartz版本3. ...
- Linux 运维之硬链接与软链接详解
了解这个的时候不如先知道下文件吧. 我们知道文件都有文件名与数据,但是呢这个在 Linux 上被分成两个部分:用户数据 (user data) 与元数据 (metadata). 用户数据,即文件数据块 ...
- nodejs日志管理log4js
常用的2种配置: 1.按文件大小分片,备份若干数量的文件 var log4js = require('log4js'); log4js.configure({ "appenders" ...
- 浅谈辄止WCF:完成最基本的WCF项目(1)
Windows Communication Foundation(WCF)是由微软开发的一系列支持数据通信的应用程序框架,可以翻译为Windows 通讯开发平台. WCF的所有服务都会公开契约.契约包 ...
- Linux安装PHP加速器Xcache
XCache 是一个又快又稳定的 PHP opcoolcode 缓存器. 经过良好的测试并在大流量/高负载的生产机器上稳定运行. 经过(在linux 上)测试并支持所有现行 PHP 分支的最新发布版本 ...
- ubuntu安装卸载软件
sudo apt-get remove nagios3 #卸载软件 sudo apt-get autoremove #卸载依附软件包 rpm格式 安装:rpm -ivh *** 查看:rpm -q * ...
- GridView .net访问
HTML code <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns=&qu ...
- C# Winform小程序:局域网设置NTP服务器、实现时间同步
设置NTP服务器: NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议. 局域网不能连接Internet,可以设置一台计算机为NTP服务器. ...
- c#做的查找文件夹内内容的小工具
第一次写博客有点激动啊QAQ 来新单位,一直没活干,公司代码控制器太多,其中有很多文件夹,每次找一个控制器都老找不到,我又不愿意用VS的全局搜索,想着没事就做了个查找控制器的小工具.代码如下: 先添加 ...
- node.js之forEach
forEach用法: var array1=[1,2,3]; array1.forEach(function(item,index){ console.log(item+'---'+index); } ...