C語言最大公因數

在C語言中,你可以使用埃拉托斯特尼質數篩(AKS算法)來找出兩個數的最大公因數(GCD)。這個算法是基於質數篩的原理,可以快速地找出兩個數的GCD。以下是一個簡單的C語言程式,用來計算兩個數的GCD:

#include <stdio.h>

int gcd(int a, int b) {
    if (b == 0) {
        return a;
    }
    else {
        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,並返回它們的GCD。如果b為0,那麼a就是它們的GCD;否則,函數會繼續調用自己,直到b為0為止。

在主函數main中,程式要求用戶輸入兩個數,並使用scanf函數來讀取輸入。然後,程式調用gcd函數來計算這兩個數的GCD,並使用printf函數來輸出結果。

請注意,這個程式假設ab都是正數。如果你需要處理負數或者非整數,你可能需要修改這個程式來適應你的需求。