要求:计算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; }