C 言語で最大公約数を求める方法

C言語で最も使われる最大公約数の求め方はユークリッドの互除法です。

#include <stdio.h>

// 函数声明
int gcd(int a, int b);

int main() {
    int a, b;

    printf("请输入两个整数:");
    scanf("%d %d", &a, &b);

    int result = gcd(a, b);

    printf("最大公约数是:%d\n", result);

    return 0;
}

// 函数定义
int gcd(int a, int b) {
    if (a % b == 0) {
        return b;
    } else {
        return gcd(b, a % b);
    }
}

二つの整数を入力すると、プログラムはそれらの最大公約数を計算して出力します。このプログラムは、最大公約数を求めるために再帰関数gcdを使用してユークリッドの互除法を実装しています。aがbで割り切れる場合、bは最大公約数です。そうでない場合、gcd(b, a % b)を再帰的に呼び出して計算を続けます。

bannerAds