习题2-4 求交错序列前N项和 (15分)

本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+… 的前N项之和。
输入格式:

输入在一行中给出一个正整数N。
输出格式:

在一行中输出部分和的值,结果保留三位小数。
输入样例:
5

输出样例:
0.917

#include 
int main()
{
    int N,i;
    int flag=1;
    double d=1;
    double sum=0;
    scanf("%d",&N);
    for(i=1;i<=N;i++){
    	sum=sum+flag*i/d*1.0;
    	flag=-flag;
    	d+=2;
	}
	printf("%.3f",sum);
	return 0;
}

刚开始做题时没有想到直接用flag的正负变换来变更符号,而是使用了判断奇偶的方法,在for循环中嵌套了if else 最后发现代码太过繁琐

你可能感兴趣的:(习题2-4 求交错序列前N项和 (15分))