C语言程序设计之最大公倍数与最小公约数算法:
#include <stdio.h>
// 最大公约数
int greatest_common_divisor(int a, int b)
{
if(b == 0) return a;
else return greatest_common_divisor(b, a % b);
}
// 最小公倍数
int least_common_multiple(int a, int b)
{
return a * b / greatest_common_divisor(a, b);
}
int main(void)
{
int m, n, gcd, lcm;
m = 400;
n = 600;
gcd = greatest_common_divisor(m, n);
lcm = least_common_multiple(m, n);
printf("%d\t%d\t%d\t%d\n", m, n, gcd, lcm);
return 0;
}