编写程序,求1+1/1!+1/2!+1/3!+...+1/n!,并将结果存放到e (打印显示2位小数) C语言
时间: 2023-09-12 20:05:18 浏览: 81
以下是求解1+1/1!+1/2!+1/3!+...+1/n!的C语言程序:
```c
#include <stdio.h>
int main()
{
int n, i;
double sum = 1, fact = 1;
printf("请输入n的值:");
scanf("%d", &n);
for(i = 1; i <= n; i++){
fact *= i;
sum += 1 / fact;
}
printf("e的值为:%.2f", sum);
return 0;
}
```
程序中使用了一个for循环,依次计算1+1/1!+1/2!+1/3!+...+1/n!的值。其中,fact变量表示当前循环中的阶乘值,每次循环将i乘到fact中;sum变量表示当前循环中的部分和,每次循环将1/fact加到sum中。最终,将sum的值输出即可。
相关问题
编写程序求1!+2!+3!+..+n!
以下是C语言编写程序求1!+2!+3!+..+n!的例子:
```c
#include <stdio.h>
int main()
{
int n, i, j, sum = 0, s = 1;
scanf("%d", &n); // 输入n
for (i = 1; i <= n; i++) {
s = 1; // 每次循环前将s初始化为1
for (j = 1; j <= i; j++) {
s = s * j; // 计算i的阶乘
}
sum = sum + s; // 累加阶乘之和
}
printf("%d", sum); // 输出结果
return 0;
}
```
编写程序求1! +2! +3! ..+10!
以下是C语言和Python两种编写程序求1! +2! +3! ..+10!的例子:
1.C语言程序
```c
#include <stdio.h>
int main()
{
int i, j;
double e = 1, factorial = 1;
for (i = 1; factorial >= 0.000001; i++)
{
factorial = 1;
for (j = 1; j <= i; j++)
{
factorial *= j;
}
e += 1.0 / factorial;
}
printf("e = %lf\n", e);
return 0;
}
```
2.Python程序
```python
def factorial(n):
if n == 1:
return 1
else:
return n * factorial(n-1)
sum = 0
for i in range(1, 11):
sum += factorial(i)
print(sum) # 输出:4037913
```