//题目是:编程求 e=1+1/1\ +1/2!+1/3!+ +1/n!,直到第 10 项为止
int i=1;
float s=1.0,e=1.0;
for(i=1;i<=10;i++){
s=s*i;
e=e+1/s;
}
printf ("%f",e) ;
上面是我推的答案,这里for循环里面的i 我觉得应该小于10,但是网上的答案都和上面的代码一样!求证一下!这里的i 为什么<=10;
//题目是:编程求 e=1+1/1\ +1/2!+1/3!+ +1/n!,直到第 10 项为止
int i=1;
float s=1.0,e=1.0;
for(i=1;i<=10;i++){
s=s*i;
e=e+1/s;
}
printf ("%f",e) ;
#include <stdio.h>
float jiecheng(int n)
{
int i;
float s = 1.0;
for(i = 1; i <= n; ++i){
s *= i;
}
return s;
}
int main(void) {
int N = 10, i;
float sum = 1;
for(i = 1; i <= N; ++i){
sum += 1.0 / jiecheng(i);
}
printf("e=%f",sum);
return 0;
}
这里说的是阶乘分之一的第十项