关于c语言的问题1 、求 1+1⼀2+1⼀4+1⼀7+1⼀11+1⼀16+1⼀22+...... 的值,直到最后一项的值小于 10 的 -5 次方

2025-01-01 00:48:27
推荐回答(3个)
回答1:

#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的值不会改变的,

其他的基本上没什么问题了,你再编译试试看

回答2:

#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;
}

回答3:

#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;
}