要求:计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值,打印出结果。
法一:
?????????从要求,我们可以看出,计算内容分为正数和负数。对他们求和,可以通过分别求和再相加。
#include<stdio.h>
int main()
{
float sum1 = 0;
float sum2 = 0;
for (int i = 1; i <= 100; i = i + 2)
{
sum1 += 1.0 / i;
}
for (int i = 2; i <= 100; i = i + 2)
{
sum2 -= 1.0 / i;
}
printf("%f\n", sum1 + sum2);
return 0;
}
?法二:
? ? ? ? 也可以通过flag,来决定分数的正负
#include<stdio.h>
int main()
{
int flag = 1;
float sum = 0;
for (int i = 1; i <= 100; i++)
{
sum += flag * 1.0 / i;
flag = -flag;
}
printf("%f", sum);
return 0;
}