浙大版《C语言程序设计(第3版)》题目集
习题2-4 求交错序列前N项和 (15分)
本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+… 的前N项之和。
输入格式:
输入在一行中给出一个正整数N。
输出格式:
在一行中输出部分和的值,结果保留三位小数。
输入样例:
5
输出样例:
0.917
#include<stdio.h>
#include<math.h>
int main(void)
{
int denominator = 1, numerator, N, i;
double sum = 0;
scanf("%d", &N);
for( i = 1; i <= N; i++)
{
numerator = pow(-1, i - 1) * i;//这里调用指数函数,分子奇数次幂为-1,偶数次幂为1
sum += 1.0 * numerator / denominator;
denominator += 2;
}
printf("%.3lf", sum);
return 0;
}