使用c语言用do-while的循环,求阶乘的倒数和
时间: 2024-05-22 12:16:25 浏览: 136
#include <stdio.h>
int main() {
int n, i=1;
double sum=0, fac=1;
printf("请输入一个正整数n:");
scanf("%d", &n);
do {
fac *= i; //计算阶乘
sum += 1.0/fac; //计算阶乘的倒数和
i++;
} while(i<=n);
printf("%d的阶乘的倒数和为:%lf\n", n, sum);
return 0;
}
相关问题
C语言只用while循环求阶乘倒数的和
C语言只用while循环求阶乘倒数的和可以按照以下步骤实现:
1. 定义变量n作为输入的数,定义变量i作为循环计数器,定义变量sum作为阶乘倒数的和,初始化sum为0。
2. 在while循环中,当i小于等于n时,执行以下操作:
a. 定义变量factorial作为i的阶乘,初始化为1。
b. 定义变量j作为循环计数器,当j小于等于i时,执行以下操作:
i. 将factorial乘以j。
ii. 将j加1。
c. 将sum加上1/factorial。
d. 将i加1。
3. 循环结束后,输出sum的值即为阶乘倒数的和。
用C语言编写的使用do-while循环计算S=1+1/1!+1/2!+1/3!+...+1/n!的程序:
下面是使用C语言编写的使用do-while循环计算S=1+1/1!+1/2!+1/3!+...+1/n!的程序:
```c
#include <stdio.h>
int main() {
int n, i = 1;
double s = 1, t = 1;
printf("请输入n的值:");
scanf("%d", &n);
do {
t *= i;
s += 1 / t;
i++;
} while (i <= n);
printf("S的值为:%lf\n", s);
return 0;
}
```
该程序使用了一个do-while循环,先计算出每个阶乘的值,再将每个阶乘的倒数加到S中,最后输出S的值。
阅读全文