4.定义Cone类,类中定义私有的数据成员r、h,分别代表底面半径和高;类中分别声明公有访问类型的有参和无参的构造函数,类中声明无返回值的成员函数outputO和acreage0;类外定义不实现任何功能的无参构造函数;类外定义有参构造函数的功能,给数据成员工和上赋值;定outpt1的功能是输出圆锥体底面半径和高的值,acreage0的功能是求出圆锥体侧表面积并输出:主函数中输入圆锥体底面半径和高的值,并通过访问成员函数output输出底面半径和高的值、访问acreage 计算并输出面积的值
时间: 2024-03-12 09:43:30 浏览: 105
好的,以下是Cone类的实现:
```cpp
#include <iostream>
#include <cmath>
using namespace std;
class Cone{
private:
double r, h;
public:
Cone(){}
Cone(double r_, double h_){
r = r_;
h = h_;
}
void outputO(){
cout << "底面半径:" << r << endl;
cout << "高:" << h << endl;
}
void acreage0(){
double l = sqrt(r*r+h*h);
double S = 3.1415926*r*l;
cout << "侧面积:" << S << endl;
}
};
int main(){
double r, h;
cin >> r >> h;
Cone c(r, h);
c.outputO();
c.acreage0();
return 0;
}
```
主函数中先输入圆锥体底面半径和高,然后用这两个值构造了一个Cone对象c。接着通过访问c的成员函数outputO和acreage0输出底面半径、高和侧面积的值。
相关问题
4.定义 Cone类,类中定义私有的数据成员r、h,分别代表底面半径和高;类中分别声明公有访问类型的有参和无参的构造函数,类中声明无返回值的成员函数output() 和 acreageO;类外定义不实现任何功能的无参构造函数;类外定义有参构造函数的功能,给数据成员r和h赋值;定义 output 0的功能是输出圆锥体底面半径和高的值,acreage O的功能是求出圆锥体侧表面积并输出;主函数中输入圆锥体底面半径和高的值,并通过访问成员函数outout输出底面半径和高的值、访问 acreage 计算并输出面积的值。
下面是 Cone 类的代码实现:
```C++
#include <iostream>
#include <cmath>
using namespace std;
class Cone {
private:
double r; // 圆锥体底面半径
double h; // 圆锥体高度
public:
Cone(); // 无参构造函数
Cone(double r, double h); // 有参构造函数
void output(); // 输出底面半径和高
void acreageO(); // 计算并输出侧表面积
};
Cone::Cone() {} // 无参构造函数的实现
Cone::Cone(double r, double h) : r(r), h(h) {} // 有参构造函数的实现
void Cone::output() {
cout << "圆锥体底面半径:" << r << endl;
cout << "圆锥体高度:" << h << endl;
}
void Cone::acreageO() {
double s = M_PI * r * sqrt(pow(r, 2) + pow(h, 2)); // 计算侧面积
cout << "圆锥体侧表面积:" << s << endl;
}
int main() {
double r, h;
cout << "请输入圆锥体底面半径和高:" << endl;
cin >> r >> h;
Cone cone(r, h); // 创建一个圆锥体对象
cone.output(); // 输出圆锥体底面半径和高
cone.acreageO(); // 计算并输出圆锥体侧表面积
return 0;
}
```
在上面的代码中,我们先定义了一个 Cone 类,其中包括了底面半径 r 和高度 h 两个私有数据成员,以及构造函数、输出函数和计算面积函数三个公有成员函数。
构造函数包括了无参和有参两种类型,无参构造函数不需要做任何事情,直接留空即可;有参构造函数需要传入两个参数,分别是底面半径和高,并将它们分别赋值给私有数据成员 r 和 h。
输出函数 output() 只需要输出圆锥体底面半径和高度即可,而计算面积函数 acreageO() 则需要根据圆锥体的底面半径和高度来计算侧面积,并将结果输出即可。
在主函数中,我们首先通过 cin 输入圆锥体的底面半径和高度,然后通过 Cone 类的有参构造函数创建了一个圆锥体对象,接着分别调用了 output() 和 acreageO() 函数来输出底面半径和高度以及计算侧面积。
定义 Cone 类,类中定义私有的数据成员 r 、 h ,分别代表底面半径和高;类中分别声明公有访问类型的有参和无参的构造函数,类中声明无返回值的成员函数 output ()和 acreage ();类外定义不实现任何功能的无参构造函数;类外定义有参构造函数的功能,给数据成员 r 和 h 赋值;定义 output )的功能是输出圆锥体底面半径和高的值, acreage O 的功能是求出圆锥体侧表面积并输出,主函数中输入圆锥体底面半径和高的值,并通过访问成员函数 output 输出底面半径和高的值、访问 acreage 计算并输出面积的值。
下面是代码实现:
```cpp
#include <iostream>
#include <cmath>
using namespace std;
class Cone {
private:
double r, h;
public:
Cone() {} // 无参构造函数
Cone(double r, double h): r(r), h(h) {} // 有参构造函数
void output() { // 输出底面半径和高的值
cout << "底面半径:" << r << endl;
cout << "高:" << h << endl;
}
void acreage() { // 计算并输出面积的值
double s = M_PI * r * sqrt(r * r + h * h);
cout << "侧面积:" << s << endl;
}
};
int main() {
double r, h;
cout << "请输入底面半径和高:";
cin >> r >> h;
Cone cone(r, h); // 创建 Cone 对象
cone.output(); // 调用 output 成员函数输出底面半径和高的值
cone.acreage(); // 调用 acreage 成员函数计算并输出面积的值
return 0;
}
```
代码解析:
- `Cone` 类中定义了私有的数据成员 `r` 和 `h`,分别代表底面半径和高;
- 类中分别声明了公有访问类型的有参和无参的构造函数,可以通过这些构造函数创建对象;
- 类中声明了无返回值的成员函数 `output()` 和 `acreage()`,分别用于输出底面半径和高的值,以及计算并输出侧面积的值;
- 类外定义了不实现任何功能的无参构造函数;
- 类外定义了有参构造函数的功能,给数据成员 `r` 和 `h` 赋值;
- 在主函数中,首先从标准输入流中读入底面半径和高的值,然后创建 `Cone` 对象 `cone`,并调用 `output()` 和 `acreage()` 成员函数输出底面半径和高的值,并计算并输出侧面积的值。
阅读全文