C++问题 问题出在哪了

tuweijian 2011-05-06 06:03:24
// 05062.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#define Pi 3.1415926
#include"iostream"
using namespace std;
class circle{
private:
double radius;
public:
circle(double r):radius(r){}
void set_radius(int r){radius=r;}
double get_radius()const {return radius;}
void show() const{
cout<<"半径:"<<radius<<endl;
}
};
class orb:public circle{
private:
double surface;
double volume;
public:
orb(double r,double s,double v):circle(r),surface(s),volume(v){
s=4*Pi*r*r;
v=(4/3)*Pi*r*r*r;}
void show()const{
circle::show();
cout<<"球的表面积:"<<surface<<endl;
cout<<"球的体积:"<<volume<<endl;
}
};

int main(int argc, char* argv[])
{
double r;
cout<<"please input a radius"<<endl;
cin>>r;
circle r1(r);
r1.show();
cout<<endl;
orb r2(r);
r2.show();

return 0;

}
...全文
110 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
alweeq86 2011-05-06
  • 打赏
  • 举报
回复

//构造函数有问题
orb(double r):circle(r)
{
surface=4*Pi*r*r;
volume=(4/3)*Pi*r*r*r;
}
cllan_jim 2011-05-06
  • 打赏
  • 举报
回复
什么问题?
要学会提问、、
xspace_time 2011-05-06
  • 打赏
  • 举报
回复
未知数初始化一般无意义
#define Pi 3.1415926
#include"iostream"
using namespace std;
class circle{
private:
double radius;
public:
circle(double r):radius(r){}
void set_radius(int r){radius=r;}
double get_radius()const {return radius;}
void show() const{
cout<<"半径:"<<radius<<endl;
}
};
class orb:public circle{
private:
double surface;
double volume;
public:
orb(double r):circle(r)
{
surface=4*Pi*r*r;
volume=(4/3)*Pi*r*r*r;}
void show()const{
circle::show();
cout<<"球的表面积:"<<surface<<endl;
cout<<"球的体积:"<<volume<<endl;
}
};

int main(int argc, char* argv[])
{
double r;
cout<<"please input a radius"<<endl;
cin>>r;
circle r1(r);
r1.show();
cout<<endl;
orb r2(r);
r2.show();
return 0;
}
或者
#define Pi 3.1415926
#include"iostream"
using namespace std;
class circle{
private:
double radius;
public:
circle(double r):radius(r){}
void set_radius(int r){radius=r;}
double get_radius()const {return radius;}
void show() const{
cout<<"半径:"<<radius<<endl;
}
};
class orb:public circle{
private:
double surface;
double volume;
public:
orb(double r,double s,double v):circle(r),surface(s),volume(v){
surface=4*Pi*r*r;//使用s参数求surface时,对surface(s)函数才有意义
volume=(4/3)*Pi*r*r*r;}
void show()const{
circle::show();
cout<<"球的表面积:"<<surface<<endl;
cout<<"球的体积:"<<volume<<endl;
}
};

int main(int argc, char* argv[])
{
double r;
cout<<"please input a radius"<<endl;
cin>>r;
circle r1(r);
r1.show();
cout<<endl;
orb r2(r,0,0);
r2.show();
return 0;
}
或者
#define Pi 3.1415926
#include"iostream"
using namespace std;
class circle{
private:
double radius;
public:
circle(double r):radius(r){}
void set_radius(int r){radius=r;}
double get_radius()const {return radius;}
void show() const{
cout<<"半径:"<<radius<<endl;
}
};
class orb:public circle{
private:
double surface;
double volume;
public:
orb(double r,double s,double v):circle(r),surface(s),volume(v){
surface=4*Pi*s*s;
volume=(4/3)*Pi*v*v*v;}
void show()const{
circle::show();
cout<<"球的表面积:"<<surface<<endl;
cout<<"球的体积:"<<volume<<endl;
}
};

int main(int argc, char* argv[])
{
double r;
cout<<"please input a radius"<<endl;
cin>>r;
circle r1(r);
r1.show();
cout<<endl;
orb r2(r,r,r);
r2.show();
return 0;
}
Freedom 2011-05-06
  • 打赏
  • 举报
回复
没有明白
xiaolomg 2011-05-06
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 ljt3969636 的回复:]

C/C++ code

#define Pi 3.1415926
class circle{
private:
double radius;
public:
circle(double r):radius(r){}
void set_radius(int r){radius=r;}
double get_radius()const {return radius;……
[/Quote]
这个是正解!
xiaolomg 2011-05-06
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 ljt3969636 的回复:]

引用 1 楼 dizuo 的回复:

什么问题?
要学会提问、、、


习惯就好,逐渐培养我们猜的能力.......
[/Quote]
给力!但您也说说是什么问题啊
ljt3969636 2011-05-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 dizuo 的回复:]

什么问题?
要学会提问、、、
[/Quote]

习惯就好,逐渐培养我们猜的能力.......
ljt3969636 2011-05-06
  • 打赏
  • 举报
回复

#define Pi 3.1415926
class circle{
private:
double radius;
public:
circle(double r):radius(r){}
void set_radius(int r){radius=r;}
double get_radius()const {return radius;}
void show() const{
cout<<"半径:"<<radius<<endl;
}
};
class orb:public circle{
private:
double surface;
double volume;
public:
orb(double r):circle(r),surface(4*Pi*r*r),volume((4/3)*Pi*r*r*r){
}
void show()const{
circle::show();
cout<<"球的表面积:"<<surface<<endl;
cout<<"球的体积:"<<volume<<endl;
}
};


int main(int argc, char* argv[])
{
double r;
cout<<"please input a radius"<<endl;
cin>>r;
circle r1(r);
r1.show();
cout<<endl;
orb r2(r);
r2.show();

return 0;

}
ryfdizuo 2011-05-06
  • 打赏
  • 举报
回复
什么问题?
要学会提问、、、

64,639

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧