1/1!-1/2!+1/3!-…+1/99!-1/100!=c语言
时间: 2023-11-17 16:07:02 浏览: 88
1加到100(C语言)
5星 · 资源好评率100%
这是一个C语言程序,用于计算1/1!-1/2!+1/3!-…+1/99!-1/100!的值。其中,1/n!表示1除以n的阶乘,阶乘的计算使用了循环和pow函数。程序中使用了两种不同的方法来计算这个式子的值,一种是通过循环累加的方式,另一种是通过累乘的方式。两种方法的时间复杂度分别为O(n)和O(n^2)。下面是第一种方法的代码:
```c
#include <stdio.h>
#include <math.h>
int main() {
int i = 0;
int n = 0;
float sum = 0.0;
for (i = 0; i <= 100; i++) {
sum = sum + ((1 / (n + 1.0))*(pow(-1,n)));
++n;
}
printf("%f\n", sum);
return 0;
}
```
下面是第二种方法的代码:
```c
#include <stdio.h>
#include <math.h>
#pragma warning (disable : 4996)
float xunhuan(int n) {
int i = 1, flag = 1;
float c, sum = 0;
for (i; i <= n; i++) {
int j = 1;
c = 1;
for (j; j <= 2 * i - 1; j++) {
c *= j;
}
sum += flag / c;
flag = -flag;
}
return sum;
}
int main() {
int n = 0;
float SUM;
printf("请输入计算的项数:");
scanf("%d", &n);
SUM = xunhuan(n);
printf("%f", SUM);
return 0;
}
```
阅读全文