C语言——两种方法计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值

方法一:首先我们先观察这个数学式子的规律,可以发现奇数项均为正数,偶数项均为负数。则我们可以利用条件语句if来判断奇偶,最后分别对奇数项和偶数项求和。
源代码:

#include<stdio.h>
#include<stdlib.h>
int main() {
 double sum1 = 0, sum2 = 0, sum; //因为1/i会出现小数,所以需定义浮点型double
 int i;
 for (i = 1; i <= 100; i++)
 {
  if (i % 2 == 1)  //判断奇偶性
   sum1 = sum1 + 1.0 / i;  //因为定义的是浮点型,则分子或分母至少有一个保留一位小数
  else sum2 = sum2 - 1.0/ i;
 }
 sum = sum1 + sum2;
 printf("%f\n", sum);
 system("pause");
 return 0;
}

方法二:观察上式可知每一项之间为正负交替,则可以利用-1的次方来实现正负的交替,这里就需要用到pow函数。
函数原型:double pow(double x, double y)
功能:计算x^y的值
举例:
double m;
m = pow(6.88, 2); // 计算6.88的平方,并将结果保存在变量m中
注:使用pow函数必须将头文件#include<math.h>包含进源文件中
源代码:

#include<stdio.h>
#include<stdlib.h>
#include<math.h> //注意一定要有这个
int main() {
 double sum = 0;
 int i;
 for (i = 1; i <= 100; i++)
 {
  sum = sum + (pow(-1, i + 1)) / i;  //用到函数pow
 }
 printf("%f\n", sum);
 system("pause");
 return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值