浙大版《C语言程序设计(第4版)》题目集参考答案
本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和。
输入格式:
输入在一行中给出一个正整数N。
输出格式:
在一行中输出部分和的值,结果保留三位小数。
输入样例:
5
输出样例:
0.917
提交结果:
基本思路:
找出规律求和,利用大小为1的变量每循环一次改变正负实现交叉
代码实现:
#include<stdio.h>
int main()
{
int N = 0;
scanf("%d", &N);
int flag = 1;
double fz = 1;
double fm = 1;
double sum = 0;
for (int i = 1; i <= N; i++)//求交错序列前N项和
{
sum += (fz / fm) * flag;
fz++;
fm += 2;
flag = -flag;
}
printf("%.3lf", sum);
return 0;
}
欢迎提问和纠错,共同讨论一起进步!