首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C語言練習:交替加減求和 1-2+3-4+...+9 實現與技巧

     編輯:關於C語言

題目描述

計算 f = 1 - 2 + 3 - 4 + 5 - 6 + 7 - 8 + 9,符號交替變化。

核心技巧:符號變量法

引入變量 k 表示當前符號,初始為 1,每輪迭代乘以 -1 翻轉。

代碼實現

[cpp]
#include 

#define N 9

void calculate_alternating_sum(int m);

int main() {
    calculate_alternating_sum(N);
    return 0;
}

void calculate_alternating_sum(int m) {
    int sum = 0;
    int sign = 1;  // 1 代表正,-1 代表負

    for (int i = 1; i <= m; i++) {
        sum += i * sign;
        sign = -sign;  // 符號翻轉
    }
    printf("1-2+3-4+...+9 = %d\n", sum);
}

運行結果


1-2+3-4+...+9 = 5

手算驗證


1 - 2 = -1
-1 + 3 = 2
2 - 4 = -2
-2 + 5 = 3
3 - 6 = -3
-3 + 7 = 4
4 - 8 = -4
-4 + 9 = 5  ✅

進階技巧

  • 位運算判斷奇偶:(i & 1) ? i : -i 替代符號變量。
  • 數學公式:偶數項成對 (2k-1) - 2k = -1,共 4 對 = -4,加上最後一項 9 → 5。
  • 擴展:通用函數 alternating_sum(n, start_sign) 支持任意起始符號與長度。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved