一个关于c++的小问题

来源:百度知道 编辑:UC知道 时间:2024/07/01 13:15:29
#include <iostream.h>

class A
{
double x;
public:
A(double y);
double circle();
};

A::A(double y)

{
x=y;
}

double A::circle()
{
int c=1;
double t,m,s=1e-6;
while(m>=s)
{
m=x/c;
t+=m;
x=-x*x*m*c;
c=c+2;
}
return t;
}

void main()
{
double d,k,l;
A aa(1/5),bb(1/239);
d=aa.circle(),k=bb.circle();
l=16*d-4*k;
cout<<l;
}

帮忙找一下错误 谢谢

double A::circle()
{
int c=1;
double t,m,s=1e-6;
while(m>=s)
{
m=x/c;
t+=m;
x=-x*x*m*c;
c=c+2;
}
return t;
}
中t 和m 都没有初始化呀;
把double t,m,s=1e-6; 中t改为t=0;
我不知道你要表达什么意思,所以m不知道该初始化什么值!自己想想!

double A::circle()
{
int c=1;
double t,m,s=1e-6;
while(m>=s)
{
m=x/c;
t+=m;
x=-x*x*m*c;
c=c+2;
}
return t;
}
m 没初始化.

用下面这个:
A aa(1.0/5),bb(1.0/239);

cout<<l<<endl;

m 没初始化.