C++面向对象类的实例题目十二
题目描述:
写一个程序计算正方体、球体和圆柱体的表面积和体积
程序代码:
#include<iostream>
#define PAI 3.1415
using namespace std;
class Shape
{
public:
virtual void ShapeName()=0;
virtual void area()
{
return ;
}
virtual void volume()
{
return ;
}
};
class Cube:public Shape
{
public:
Cube(float len):length(len){};
void ShapeName()
{
cout<<"Cube:"<<endl;
}
void area()
{
double s = 6*length*length;
cout<<"Area:"<<s<<endl;
}
void volume()
{
double v = length*length*length;
cout<<"Volume:"<<v<<endl;
}
private:
float length;
};
class Sphere:public Shape
{
public:
Sphere(float r):radius(r){};
void ShapeName()
{
cout<<"Sphere:"<<endl;
}
void area()
{
double s = 4*radius*radius*PAI;
cout<<"Area:"<<s<<endl;
}
void volume()
{
double v = (4*radius*radius*radius*PAI)/3;
cout<<"Volume:"<<v<<endl;
}
private:
float radius;
};
class Cylinder:public Shape
{
public:
Cylinder(float r,float h):radius(r),length(h){};
void ShapeName()
{
cout<<"Cylinder:"<<endl;
}
void area()
{
double s = radius*radius*PAI + 2*PAI*radius*length;
cout<<"Area:"<<s<<endl;
}
void volume()
{
double v = radius*radius*PAI*length;
cout<<"Volume:"<<v<<endl;
}
private:
float radius;
float length;
};
int main()
{
Shape * pt;
pt = new Cube(2);
pt->ShapeName();
pt->area();
pt->volume();
cout<<"==========================="<<endl;
pt = new Sphere(2);
pt->ShapeName();
pt->area();
pt->volume();
cout<<"==========================="<<endl;
pt = new Cylinder(2,2);
pt->ShapeName();
pt->area();
pt->volume();
cout<<"==========================="<<endl;
}
结果输出:
Cube:
Area:24
Volume:8
===========================
Sphere:
Area:50.264
Volume:33.5093
===========================
Cylinder:
Area:37.698
Volume:25.132
===========================
C++面向对象类的实例题目十二的更多相关文章
- C++面向对象类的实例题目十
题目描述: 编写一个程序,其中有一个汽车类vehicle,它具有一个需要传递参数的构造函数,类中的数据成员:车轮个数wheels和车重weight放在保护段中:小车类car是它的私有派生类,其中包含载 ...
- C++面向对象类的实例题目二
题目描述: 编写一个程序,设计一个产品类Product,其定义如下: class Product { public: Product(char *n,int p,int q); //构造函数 ~Pro ...
- C++面向对象类的实例题目四
题目描述: 以面向对象的概念设计一个类,此类包含3个私有数据:unlead.lead(无铅汽油和有铅汽油)以及total(当天总收入,无铅汽油的价格是17元/升,有铅汽油的加个是16元/升),请以构造 ...
- C++面向对象类的实例题目九
题目描述: 编写一个学生和老师数据输入和显示程序,学生数据有编号.姓名.班号和成绩,教师数据有编号.姓名.职称和部门. 要求将编号.姓名.输入和显示设计成一个类person,并作为学生数据操作类stu ...
- C++面向对象类的实例题目八
题目描述: 编写一个程序输入3个学生的英语和计算机成绩,并按照总分从高到低排序.要求设计一个学生类Student,其定义如下: 程序代码: #include<iostream> using ...
- C++面向对象类的实例题目七
题目描述: 编写两个有意义的类,使一个类嵌套在另一个类中. 分析: 本题涉及两个类student和cdegree,前者为学生类,包含学生的学号(nubner),姓名(name)和成绩(degree), ...
- C++面向对象类的实例题目五
题目描述: 编写一个程序,采用一个类求n!,并输出5!的值. 程序代码: #include<iostream> using namespace std; class CFactorial ...
- C++面向对象类的实例题目十一
题目描述: 写一个程序计算三角形,正方形和圆形3种图形的面积 程序代码: #include<iostream> #include<cmath> #define PAI 3.14 ...
- C++面向对象类的实例题目六
问题描述: 编写一个程序计算两个给定长方形的面积,其中在设计类成员函数addarea()(用于计算两个长方形的总面积)时使用对象作为参数. 程序代码: #include<iostream> ...
随机推荐
- 【Unity】UGUI的Text各种小问题
Text:用中文输入法时,无法输入汉字.输入了拼音后,按回车键无反应.目前的办法是在别的地方打好字后复制过来. Font:字体必须选一个,选None则文字变成一串黑色方块. Font Size:文字大 ...
- buildroot 使用本地交叉编译器记录
继上一次glibc bug 事件后,剑锋就说文件系统要用统一的交叉编译器.所以今天就试了一下,便记录一下 在官网下载干净的 buildroot 进入解压后的 buildroot 目录 步骤: make ...
- HTML资料——做网页时遇到的
HTML <meta> 标签 浏览器支持 IE Firefox Chrome Safari Opera 所有浏览器都支持 <meta> 标签. 定义和用法 ...
- python三大神器之virtualenv pip, virtualenv, fabric通称为pythoner的三大神器。
python三大神器之virtualenv pip, virtualenv, fabric通称为pythoner的三大神器. virtualenv virtualenv------用来建立一个虚拟 ...
- s:debug标签的错误ConcurrentModificationException
搭建SSH的时候页面上加入<s:debug>标签后台出现 严重: Servlet.service() for servlet jsp threw exception java.util.C ...
- 关于Cocos2d-x数据类型的使用
常用的是三种数据类型,Value,Vector,Map,翻译成中文就是值,数组,字典.其中字典的意思就是拿着某个关键字去这个数据结构里面找相应的对应的数据. //Value数据类型 Value int ...
- GAN(Generative Adversarial Nets)的发展
GAN(Generative Adversarial Nets),产生式对抗网络 存在问题: 1.无法表示数据分布 2.速度慢 3.resolution太小,大了无语义信息 4.无reference ...
- 第二百九十六节,python操作redis缓存-Hash哈希类型,可以理解为字典类型
第二百九十六节,python操作redis缓存-Hash哈希类型,可以理解为字典类型 Hash操作,redis中Hash在内存中的存储格式如下图: hset(name, key, value)name ...
- ioc和aop的区别?
ioc:控制反转(Inversion of Control,英文缩写为IoC)把创建对象的权利交给框架,是框架的重要特征,并非面向对象编程的专用术语.它包括依赖注入(Dependency Inject ...
- e680. 使三元色图像变明变暗
This example demonstrates how to brighten or darken an RGB buffered image by scaling the red, green, ...