这就是我想出的:
#include <stdio.h>
int main (void)
{
int n, i, j;
float e = 1.0, nFact = 1.0;
printf ("please enter the number");
scanf ("%d", &n);
for (i = 1; i <= n ; i++)
{
for (j = 1; j <= i; j++)
{
nFact *= j;
}
e = e + (1.0 / nFact);
}
printf ("The value of 'e' is : %f", e);
return 0;
}
这就是我从这段代码中得到的。输入:3 输出:2.58333(接近 2.6666...)
但是对于 n=3,e 应该给出 2.6666.. 作为一个值。
我在这里做错了吗?如何获得正确的输出?