编写一个关于圆形的C++程序。 20
要求用定义一个圆形类Circle,其中包含如下成员:1)1个私有数据成员(半径)。2)3个公有函数成员(设置半径、计算面积、计算周长)。3)3个构造函数(不带参数的构造函...
要求用定义一个圆形类Circle,其中包含如下成员:
1) 1个私有数据成员(半径)。
2) 3个公有函数成员(设置半径、计算面积、计算周长)。
3) 3个构造函数(不带参数的构造函数、带参数的构造函数和拷贝构造函数)。
主函数main使用圆形类Circle创建圆形对象,要求:
1) 定义一个圆对象c1,从键盘输入一个值x并将其设定为c1的半径,计算并显示c1的面积和周长
2) 再定义一个圆对象c2,并将半径初始化为2x,计算并显示c2的面积和周长
3) 再定义一个圆对象c3,并用c1初始化c3,计算并显示c3的面积和周长
我写的如下,求大神帮改,谢谢!
class Circle // 定义一个圆形类class
{
private:
double a; // 定义私有数据成员半径
public:
double CArea( ); // 面积
double CLen( ); // 周长
double r;//设置半径
Circle() {a=0;}
Circle(double a) {r=a;}
Circle(Circle&a) {r=a.r;}
};
double Circle::CArea( ) // 求面积
{ return (3.14*r*r); }
double Circle::CLen( ) // 求周长
{ return (3.14*2*r); }
void main( )
{
Circle obj1; // 定义圆形类的对象obj1
cin >> obj1.r ;
cout << obj1.CArea( ) << endl; // obj1的面积
cout << obj1.CLen( ) << endl; // obj1的周长
Circle obj2(2x); // 定义圆形类的对象obj2
cout << obj2.CArea( ) << endl; // obj2的面积
cout << obj2.CLen( ) << endl; // obj2的周长
Circle obj3(obj1); // 定义圆形类的对象obj3
cout << obj3.CArea( ) << endl; // obj3的面积
cout << obj3.CLen( ) << endl; // obj3的周长 展开
1) 1个私有数据成员(半径)。
2) 3个公有函数成员(设置半径、计算面积、计算周长)。
3) 3个构造函数(不带参数的构造函数、带参数的构造函数和拷贝构造函数)。
主函数main使用圆形类Circle创建圆形对象,要求:
1) 定义一个圆对象c1,从键盘输入一个值x并将其设定为c1的半径,计算并显示c1的面积和周长
2) 再定义一个圆对象c2,并将半径初始化为2x,计算并显示c2的面积和周长
3) 再定义一个圆对象c3,并用c1初始化c3,计算并显示c3的面积和周长
我写的如下,求大神帮改,谢谢!
class Circle // 定义一个圆形类class
{
private:
double a; // 定义私有数据成员半径
public:
double CArea( ); // 面积
double CLen( ); // 周长
double r;//设置半径
Circle() {a=0;}
Circle(double a) {r=a;}
Circle(Circle&a) {r=a.r;}
};
double Circle::CArea( ) // 求面积
{ return (3.14*r*r); }
double Circle::CLen( ) // 求周长
{ return (3.14*2*r); }
void main( )
{
Circle obj1; // 定义圆形类的对象obj1
cin >> obj1.r ;
cout << obj1.CArea( ) << endl; // obj1的面积
cout << obj1.CLen( ) << endl; // obj1的周长
Circle obj2(2x); // 定义圆形类的对象obj2
cout << obj2.CArea( ) << endl; // obj2的面积
cout << obj2.CLen( ) << endl; // obj2的周长
Circle obj3(obj1); // 定义圆形类的对象obj3
cout << obj3.CArea( ) << endl; // obj3的面积
cout << obj3.CLen( ) << endl; // obj3的周长 展开
1个回答
展开全部
程序是什么问题,你具体说说。我就说说我觉得不妥的地方,你的类中基本就没有用到你设私有成变量a,那还不如把它删了(如果真这样做记得把默认构造函数的a=0改为r=0),然后是你圆的对象obj2的定义那里,
Circle obj2(2x);
里面的2x错了吧,换其他数试试
Circle obj2(2x);
里面的2x错了吧,换其他数试试
追问
因为老师的要求是
1) 1个私有数据成员(半径)。
2) 3个公有函数成员(设置半径、计算面积、计算周长)。
3) 3个构造函数(不带参数的构造函数、带参数的构造函数和拷贝构造函数)。
所以那个私有数据成员我也不知道该怎么用,那个2x确实不对,应该用c1输入的半径x的两倍,要怎么实现?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询