本題要求編寫程序,計算序列 1 - 1/4 + 1/7 - 1/10 + ... 的前N項之和。
輸入格式:
輸入在一行中給出一個正整數N。
輸出格式:
在一行中按照“sum = S”的格式輸出部分和的值S,精確到小數點后三位。題目保證計算結果不超過雙精度范圍。
輸入樣例:
10
輸出樣例:
sum = 0.819
主要思路:通過定義一個flag變量實現正負交錯
#include<stdio.h> int main() { int n, count = 1, i = 1; int flag = 1; double sum = 0; scanf("%d",&n); for(count; count <= n; count++,i += 3) { sum += flag*1.0 / i;//每一項計算出的值都應該是浮點數,因而flag完全可以聲明為一個實型變量 flag = -flag; } printf("sum = %.3lf",sum); return 0; }