c++问题(程序有错,但不知怎么改,请大家帮帮忙)

来源:百度知道 编辑:UC知道 时间:2024/06/30 08:23:31
#include <iostream>
using namespace std;
const double PI=3.14159;
const double FencePrice=35;
const double ConcretePrice=20;
//声明类Circle及其数据和方法
class Circle
{
private:
double radius;

public:
Circle(double r); //构造函数
double Circumference();//圆周长
double Area();//圆面积
}
//类的实现
//构造函数初始化数据成员radius
Circle::Circle(double r)
{radius=r;}
//计算圆的周长
double Circle::Circumference()
{
return 2*PI*radius;
}
//计算圆的面积
double Circle::Area()
{
return PI*radius*radius;
}
void main()
{
double radius;
double FenceCost,ConcreteCost;
//提示用户输入半径
cout<<"Enter the radius of the pool: ";
cin>>radius;
//声明Circle对象
Circle Pool(radius);
Circle PoolRim(radius+3);
//计算栅栏造价并输出
FenceCost=PoolRim.Circumference()*FencePrice;
cout<<"Fencing Cost is $"<

LZ好粗心啊,class定义完后应该有分号,而你写的:
class Circle
{
private:
double radius;

public:
Circle(double r); //构造函数
double Circumference();//圆周长
double Area();//圆面积
}没分号...
应该改成
class Circle
{
private:
double radius;

public:
Circle(double r); //构造函数
double Circumference();//圆周长
double Area();//圆面积
};//注意,分号
加上后一切OK,编译通过。
缺分号编译器通常会报出很多错误...
望采纳

记得记得记得
写类的时候这么写
Class xxx
{
};
然后在写类体

1:无分号,楼上已说
2:
Circle::Circle(double r)
{radius=r;}
最好写成
Circle::Circle(double r) :radius(r)
{
}
你的写法效率较低
3:
void main()是不标准的写法
应该写成int main()

缺少分号

缺少分号