C++自定义数据类型单元习题(三)
第十四周C++作业题:
定义一个圆类,属性为半径,实现操作:输入/输出半径,获得面积,获得周长。
代码一:
/*
第十四周C++作业
定义一个圆类,属性为半径,操作为输入半径并计算周长、面积,
输出半径、周长和面积。
2020年11月29日 体测前夕
*/
#include<iostream>
using namespace std;
const double P=3.14;
class circle
{
private:
double radius;
public:
void SetRadius(double r); //半径初始化
double GetArea(); //面积函数
double GetRound(); //周长函数
double GetRadius(); //获取半径
};
void circle::SetRadius(double r) //初始化半径
{
//传递参数r
radius=r;
}
double circle::GetRadius() //返回半径并输出
{
return radius;
}
double circle::GetArea() //计算面积
{
return (1/2.0)*P*radius*radius;
}
double circle::GetRound() //计算周长
{
return 2*P*radius;
}
int main()
{
circle yuan1;
double r;
cout<<"请输入圆的半径"<<endl;
cin>>r;
yuan1.SetRadius(r);
cout<<"圆的半径为"<<yuan1.GetRadius()<<endl;
cout<<"圆的面积为"<<yuan1.GetArea()<<endl;
cout<<"圆的周长为"<<yuan1.GetRound()<<endl;
return 0;
}
代码二(使用构造函数和析构函数):
/*
第十四周C++作业
定义一个圆类,属性为半径,操作为输入半径并计算周长、面积,
输出半径、周长和面积。
2020年11月29日 体测前夕
*/
//通过构造函数和析构函数实现初始化
#include<iostream>
using namespace std;
const double P=3.14;
class circle
{
public:
circle(double r);
~circle();
double GetRadius();
double GetArea();
double GetRound();
private:
double radius;
};
circle::circle(double r)
{
radius=r;
}
circle::~circle()
{
}
double circle::GetRadius()
{
return radius;
}
double circle::GetArea()
{
return (1/2.0)*P*radius*radius;
}
double circle::GetRound()
{
return 2.0*P*radius;
}
int main()
{
circle yuan1(2.0);
cout<<"圆的半径是"<<yuan1.GetRadius()<<endl;
cout<<"圆的面积是"<<yuan1.GetArea()<<endl;
cout<<"圆的周长是"<<yuan1.GetRound()<<endl;
return 0;
}