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)を再帰的に呼び出して計算を続けます。