本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和。 输入格式: 输入在一行中给出一个正整数N。 输出格式: 在一行中输出部分和的值,结果保留三位小数。编程c语言
时间: 2023-09-25 20:12:49 浏览: 164
c代码-13、功能:计算1-1/2+1/3-1/4+……+1/99-1/100。
以下是C语言的代码实现:
```c
#include <stdio.h>
int main()
{
int n, i;
double sum = 0.0, sign = 1.0;
scanf("%d", &n);
for (i = 1; i <= n; i++)
{
sum += sign * i / (2 * i - 1);
sign = -sign;
}
printf("%.3f", sum);
return 0;
}
```
代码思路解析:
1. 定义变量n表示交错序列的前n项,sum表示交错序列的部分和,sign表示交错序列的正负号,初值为1.0。
2. 从1到n循环计算交错序列的部分和,每次累加i/(2i-1)乘以正负号sign,计算完成后将正负号sign取反。
3. 最后输出交错序列的部分和,保留三位小数。
代码的时间复杂度为O(n),可以满足题目的要求。
阅读全文