题目描述
求1-2/3+3/5-4/7+5/9-6/11+...的前n项和,结果保留3位小数。
输入
输入正整数n(n>0)。
输出
输出一个实数,保留3位小数,单独占一行。
样例输入 Copy
5
样例输出 Copy
0.917
来源/分类
**
#include<stdio.h>
int main(void)
{
int i, n, deno;
double sum, flag;
scanf("%d", &n);
sum = 0.0;
deno = 1;
flag = 1.0;
/*循环n次,每次计算当前项,然后计算 下一项分母和符号,为下一次循环做准备*/
for(i = 1; i <= n; i++)
{
sum += i*flag / deno;/*累加当前项*/
deno += 2;/*分母加2,符号取反,为下次循环做准备*/
flag = -flag;
}
printf("%.3f\n", sum);
return 0;
}
原文:https://www.cnblogs.com/DuFeiXue/p/14034933.html