U86981【模板】最大公約數

最大公約數(Greatest Common Divisor, GCD),又稱為最大公因數,是指兩個或更多整數的共有最大因子。在數學中,通常使用歐幾里得算法(Euclidean algorithm)來計算兩個整數的最大公約數。

以下是一個簡單的C語言模板,用來計算兩個整數a和b的最大公約數:

#include <stdio.h>

int gcd(int a, int b) {
    if (b == 0) {
        return a;
    }
    return gcd(b, a % b);
}

int main() {
    int a, b;
    printf("請輸入兩個整數:");
    scanf("%d %d", &a, &b);
    int gcd_value = gcd(a, b);
    printf("最大公約數是:%d\n", gcd_value);
    return 0;
}

這個模板包含一個遞歸函數gcd,它接受兩個整數ab作為參數,並返回它們的最大公約數。函數的邏輯是基於歐幾里得算法的:如果b是0,那麼a就是最大公約數;否則,繼續調用函數本身,將aa除以b的餘數作為新的參數。

在主函數main中,程式首先要求用戶輸入兩個整數,然後調用gcd函數來計算它們的最大公約數,並將結果列印出來。

請注意,這個模板假設ab都是正整數。如果你需要處理負數或非整數,你可能需要對這個模板進行修改。此外,如果你的編譯器支持C11標準或更新的版本,你可以在main函數中使用scanf_s代替scanf,以獲得更好的安全性。