C语言程序设计(第三版)何钦铭著 习题2-4
习题一览表 |
---|
1. C语言程序设计(第三版)何钦铭著 习题2-1 |
2.C语言程序设计(第三版)何钦铭著 习题2-2 |
3.C语言程序设计(第三版)何钦铭著 习题2-3 |
4.C语言程序设计(第三版)何钦铭著 习题2-4 |
5.C语言程序设计(第三版)何钦铭著 习题2-5 |
6.C语言程序设计(第三版)何钦铭著 习题2-6 |
题目
求交错序列前n项和∶输入一个正整数n,计算交错序列前 n项之和
试编写相应程序。
分析过程
输入
条件:输入一个正整数n
输出
条件:输出和
代码
#include <stdio.h>
#include <math.h>
int main () {
/*定义变量*/
int n = 0; /*定义变量,存储输入的正整数n*/
int flag = 1; /*每个元素正负,1代表正,-1代表负;第一个元素为正,所以flag默认值为1*/
int denominator = 1; /*每个元素的分母值;第一个元素分母为1,所以denominator默认值为1*/
double sum = 0; /*存储计算总和*/
/*赋值*/
printf("请输入正整数n:\n"); /*输入提示*/
scanf("%d\n", &n); /*输入n整数并赋给变量*/
/*计算数据和*/
for(double i = 1 ; i<=n ; i++){
sum += flag * (i/denominator); /*依次计算第i个元素值,加到sum上*/
denominator += 2; /*第i个元素的分母值为前一个元素加2*/
flag = -flag; /*第i个元素的正负为前一个元素的flag的相反数*/
}
/*输出计算结果*/
printf("前%d个数的总和为:%.6f \n", n, sum);/*输出提示*/
return 0;
}