#include<stdio.h>
long fac(int n)
{
long f;
if (n==0||n==1) f=1;
else f=n*fac(n-1);
return f;
}
void main()
{
int n;
double e,s;
n=1;
s=1.0;
e=0.00005;
for (n=1;1/fac(n)>0.0005;n++)
{
s=s+1/fac(n);
n++;
}
printf("%lf\n",s);
}
我这个编程到底哪里错了?
输出s就等于2.00000而已
怎么办?求大神教教
计算 1/n!不要都 用整数,1/fac(n) 如果结果小于1将向下取整为0,用1.0/fac(n)
题目说是用while,但是它就是循环不起,我用for熟悉一点就先用for循环下看看,但是循环不起啊……