c语言求1+1/3!+1/5!+...................+1/21!
时间: 2023-12-01 08:42:32 浏览: 25
以下是C语言求1+1/3!+1/5!+...................+1/21!的代码:
```c
#include <stdio.h>
void main() {
int i, n = 21;
double sum = 1, t = 1;
for (i = 1; i <= n; i += 2) {
t *= i * (i + 1);
sum += 1 / t;
}
printf("sum=%lf", sum);
}
```
代码解释:
1. 首先定义变量i、n、sum和t,其中i表示循环计数器,n表示求和的上限,sum表示求和的结果,t表示阶乘的分母。
2. 循环从1开始,每次加2,直到i大于n为止。
3. 在循环中,t先乘以i和i+1,然后sum加上1/t。
4. 最后输出sum的值。
相关问题
c语言求1+1/3+1/5+..+1/n
以下是C语言求1+1/3+1/5+..+1/n的代码:
```c
#include <stdio.h>
int main() {
int n;
double sum = 0;
printf("请输入n的值:");
scanf("%d", &n);
for (int i = 1; i <= n; i += 2) {
sum += 1.0 / i;
}
printf("sum=%lf", sum);
return 0;
}
```
代码解释:
1. 首先定义变量n表示求和的最大值,sum表示求和的结果。
2. 通过scanf函数获取用户输入的n的值。
3. 使用for循环从1开始,每次加2,直到i大于n为止,这样就可以保证只加奇数项。
4. 在循环中,每次将1/i加到sum中。
5. 最后输出sum的值。
C语言求1+1/2!+...+1/n!
#include <stdio.h>
int main() {
int n, i;
double factorial = 1.0, sum = 0.0;
printf("Enter a positive integer: ");
scanf("%d", &n);
for (i = 2; i <= n; i++) {
factorial *= i;
sum += 1.0 / factorial;
}
sum += 1.5 / factorial;
printf("The sum is: %f", sum);
return 0;
}