早教吧 育儿知识 作业答案 考试题库 百科 知识分享

C++语言程序设计实践C5表面积和体积的计算设计要求:创建抽象类、定义虚函数,运用继承,实现多态菜单列表选项:求下列实体的表面积和体积1.\x05球2.\x05立方体3.\x05圆锥体4.\x05圆柱5.

题目详情
C++语言程序设计 实践
C5 表面积和体积的计算
设计要求:创建抽象类、定义虚函数,运用继承,实现多态
菜单列表选项:求下列实体的表面积和体积
1.\x05球
2.\x05立方体
3.\x05圆锥体
4.\x05圆柱
5.
▼优质解答
答案和解析
#include
using namespace std;
#define PI 3.14
class Shape
{
public:
virtual double S(double) = 0;
virtual double V(double) = 0;
virtual double S(double, double) = 0;
virtual double V(double, double) = 0;
virtual double S(double, double, double) = 0;
virtual double V(double, double, double) = 0;
virtual ~Shape(){}
};
class Ball : public Shape
{
public:
virtual double S(double r)
{
return (4 * PI * r * r);
}
virtual double V(double r)
{
return (4 / (double)3 * PI * r * r * r);
}
virtual double S(double, double){return 0;}
virtual double V(double, double){return 0;}
virtual double S(double, double, double){return 0;}
virtual double V(double, double, double){return 0;}
};
class Cube : public Shape
{
public:
virtual double S(double a, double b, double c)
{
return 2 * (a * b + b * c + a * c);
}
virtual double V(double a, double b, double c)
{
return (a * b * c);
}
virtual double S(double){return 0;}
virtual double V(double){return 0;}
virtual double S(double, double){return 0;}
virtual double V(double, double){return 0;}
};
class Column : public Shape
{
public:
virtual double S(double r, double h)
{
return (2 * PI * r * r + 2 * PI * r * h);
}
virtual double V(double r, double h)
{
return (PI * r * r * h);
}
virtual double S(double){return 0;}
virtual double V(double){return 0;}
virtual double S(double, double, double){return 0;}
virtual double V(double, double, double){return 0;}
};
class Taper : public Shape
{
public:
virtual double S(double r, double R)
{
return (PI * r * r + PI * r * R);
}
virtual double V(double r, double h)
{
return (PI * r * r * h / (double)3);
}
virtual double S(double){return 0;}
virtual double V(double){return 0;}
virtual double S(double, double, double){return 0;}
virtual double V(double, double, double){return 0;}
};
void main()
{
Ball ball;
Cube cube;
Column column;
Taper taper;
double r, a, b, c, h, R;
int n = 0;
cout
看了 C++语言程序设计实践C5表...的网友还看了以下:

把一个长方体分割成两个小正方体,它的体积和表面积与原来相比是()A体积增加,表面积减小B体积减小,表  2020-03-30 …

长方体的长为8分米,高为4分米,底面积和表面积分别是多少平方分米?长方体的,宽为6米,高为5米,底面  2020-03-30 …

将一个正方体钢坯熔铸成长方体,熔铸前后的()A体积和表面积都相等B体积和表面积都不相等C体积相等,  2020-05-23 …

底面直径是0.2m,高是10m.它的侧面积和表面积是多少?底面半径是5dm,高是15dm.它的侧面  2020-06-07 …

已知圆柱底面半径和体积,求底面直径,高和表面积已知圆柱底面半径3米和体积113.04立方米,求底面  2020-06-14 …

正方形长方形三角形圆形的体积和表面积公式表面积公式正方形长方形三角形圆形的体积和表面积公式有的发下  2020-06-14 …

将一个正方体钢坯锻造成长方体,正方体和长方体()A.体积相等,表面积不相等B.体积和表面积都不相等  2020-06-20 …

很高的分.只要答案正确圆柱体的底面半径2米,高5米,求表面积.底面半径4厘米,高4厘米,求表面积底  2020-07-18 …

飞机的湿面积和表面积有什么不同?湿面积是指进入水中的浸湿面积,那和表面积有什么不同?我的意思是把一  2020-07-30 …

用C++帮我编一个程序:由园和高多重继承派生出圆锥类,在主函数中能够实现圆锥体积和表面积的计算  2020-11-22 …