c语言输入一个正整数n,求数列1+1/2-2/3+3/5-5/8+8/13-……的前n项和
时间: 2023-09-21 18:06:55 浏览: 92
一个计算1+2+3+5+8+13+...+n的算法程序
3星 · 编辑精心推荐
```c
#include <stdio.h>
int main() {
int n;
printf("请输入正整数n:");
scanf("%d", &n);
double a = 1, b = 1; // 第一项:a/b = 1/1
double sum = a / b;
for (int i = 2; i <= n; i++) {
double c = a + b, d = a + b + b; // 第i项:c/d = (a+b)/(a+b+b)
a = c, b = d; // 更新a和b
sum += (i % 2 == 0 ? -1 : 1) * (c / d); // 根据奇偶性加上或减去该项
}
printf("前%d项和为:%.6f\n", n, sum);
return 0;
}
```
阅读全文