自然常数e
可以用级数 1 + 1 1 ! + 1 2 ! + ⋯ + 1 n ! + ⋯ 1+\frac{1}{1!}+\frac{1}{2!}+⋯+\frac{1}{n!}+⋯ 1+1!1+2!1+⋯+n!1+⋯来近似计算。本题要求对给定的非负整数n
,求该级数的前 n+1
项和。
输入格式:
输入第一行中给出非负整数n(≤1000)
。
输出格式:
在一行中输出部分和的值,保留小数点后八位。
输入样例:
10
输出样例:
2.71828180
代码:
# include <stdio.h>
# include <stdlib.h>
double fact(int n) {
double value = 1,i;
for (i=1;i<=n;i++) {
value *= i;
}
return value;
}
int main() {
int n,i = 0;
double value = 0.0;
scanf("%d",&n);
for (;i<=n;i++) {
value += (1.0/fact(i));
}
printf("%.8lf",value);
return 0;
}
提交截图:
解题思路:
对于这种返回值是double
建议函数内部都用double
型变量,否则有不可名状的错误!