- 看到这个题目,首先我们发现分母是从1开始,依次增加到100,可以用一个for循环来解决;
- 然后要考虑的就是一加一减的循环,我想到两种方法,一种是通过-1的n次方来解决,另一种就是通过a=-a的方式解决;
- 最后要注意的就是分数求和的结果肯定是小数,所以前面分母循环的变量要用double型。
第一种思路
#include <stdio.h>
#include <math.h>
int main()
{
int i;
double sum=0.0;
for (i = 1; i <= 100; i++)
{
sum += pow(-1, i + 1) * 1 / i;
}
printf("sum =%lf\n", sum);
return 0;
}
第二种思路
#include<stdio.h>
int main()
{
double sum=0.0;
int a=1;
for (int i=1;i<=100;i++){
sum+=(1.0*a)/i;
a=-a;
printf("%lf\n",sum);
}
printf("sum=%lf\n",sum);
return 0;
}