题目描述
计算 1/1 - 1/2 + 1/3 - 1/4 + 1/5 - ... + 1/99 - 1/100 的值,并打印出结果
注:除法分为整数除法和 浮点数除法,要计算出⼩数,得采⽤浮点数除法,浮点数除法的操作数中⾄少要保证有⼀个浮点数。
解法思路
可以⽤⼀个循环来计算。
- ⾸先,我们可以定义⼀个变量sum来记录计算结果,初始值为0;
- 然后,我们从 1 到 100 遍历每⼀个数;
- 对于奇数 i,将 1/i 加⼊到sum中,对于偶数 i,将 sum 减去 1/i。我们就可以得到所求的
结果。
在计算 1/i 时,需将除法转化为浮点数除法,可以将 1 写为 1.0 实现。
解法代码
cs
#include <stdio.h>
int main()
{
int i = 0;
double sum = 0;
//遍历1~100
for (i = 1; i <= 100; i++)
{
//判断当前数是奇数或偶数
if (i % 2 == 1)
//i为奇数,将sum加上1/i的值
sum += 1.0 / i;
else
//i为偶数,将sum减去1/i的值
sum -= 1.0 / i;
}
printf("%lf\n", sum);
return 0;
}
运行结果
0.688172