当n=20时求e=1+1/1 !+1/2!+...+1/n!用C语言解决
时间: 2023-11-19 11:07:21 浏览: 86
以下是C语言解决方案:
#include <stdio.h>
int main() {
int n = 20; double sum = 1, t = 1;
for (int i = 1; i <= n; i++) {
t *= i;
sum += 1 / t;
}
printf("e=%lf", sum);
return 0;
}
输出结果为:e=2.718282
相关问题
C语言习题,求 e=1+1/1!+1/2!+1/3!+...+1/n!
以下是C语言求e的代码和解释:
#include <stdio.h>
int main() {
int n, i, j;
double e = 1, item = 1;
printf("Input n:");
scanf("%d", &n);
for (i = 1; i <= n; i++) {
item = 1;
for (j = 1; j <= i; j++) {
item *= j;
}
e += 1.0 / item;
}
printf("e=%.4f\n", e);
return 0;
}
解释:
- 首先,我们需要输入一个正整数n,用来计算e的值。
- 然后,我们定义了三个变量:n表示输入的正整数,i和j用于循环计算。
- 接着,我们定义了两个浮点型变量:e表示最终的e值,item表示每一项的值。
- 我们先将e的初始值设为1,因为e的第一项为1。
- 然后,我们使用两个for循环来计算每一项的值。
- 在内层循环中,我们使用item来计算每一项的分母,即i的阶乘。
- 在外层循环中,我们将每一项的倒数加到e中。
- 最后,我们使用printf函数输出e的值,保留4位小数。
C语言利用公式e=1+1/1!+1/2!+1/3!++...+1/n!,+求出
以下是C语言利用公式e=1+1/1!+1/2!+1/3!++...+1/n!,+求出的程序:
#include <stdio.h>
void main() {
int i, n;
double sum = 1, t = 1;
printf("输入n:\n");
scanf("%d", &n);
for (i = 1; i <= n; i++) {
t = t * i;
sum = sum + 1 / t;
}
printf("e=%lf", sum);
}
用户需要输入n的值,程序会计算出e的值并输出。其中,变量sum用于存储e的值,变量t用于存储阶乘的值。在循环中,每次计算阶乘的值并将其加入到sum中,最终输出sum的值即为e的值。
相关推荐














