#include
int main()
{
int m,n=1,k=1;
double s=1.0;
while(1.0/n>=1e-5)
{
m=n;
n=m+k;
k++;
s=s+1.0/n;
}
printf("%lf",s);
return 0;
}
你的程序这里出了问题,
while(1.0/n>=1e-5)
{s=1.0;n=1;k=1;
。。。
}
每次循环s,n,k的值不会改变的,
其他的基本上没什么问题了,你再编译试试看
#include
int main()
{
int n=1,m=0;
double s=0;
while(1.0/n>=1e-5)
{
n+=m;
s+=1.0/n;
m++;
}
printf("%lf\n",s);
return 0;
}
#include
int main()
{
int m,n,k;
double s;
s=1.0;n=1;k=1;
while(1.0/n>=1e-5)
{
m=n;
n=m+k;
k++;
s=s+1.0/n;
}
printf("%f",s);
return 0;
}