c语言自练,OJ系统第二十八题。
题目描述
本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和
输入
输入在一行中给出一个正整数N。
输出
在一行中输出部分和的值,结果保留三位小数。
样例输入
5
样例输出
0.917
借助中间量改变正负号,属实高级,不过记得有乘法且结果为浮点数,用浮点数去定义中间量!
#include <stdio.h>
int main()
{
int N;
double sum = 0;
double sign = 1;
int i;
scanf("%d", &N);
for (i = 1; i <= N; i++) {
sum += sign * i / (2 * i - 1);
sign = -sign;
}
printf("%.3lf\n", sum);
return 0;
}