c语言简单计算最小公约数和最大公倍数
最小公约数和最大公倍数的计算可以使用辗转相除法和最小公倍数公式来实现。
- 辗转相除法计算最小公约数
辗转相除法是一种求两个数最大公约数的方法,其基本思路是用较大数除以较小数,再用余数去除除数,直到余数为0为止。最后一个非零余数就是最大公约数。
代码实现:
int gcd(int a, int b) {
int r;
while (b != 0) {
r = a % b;
a = b;
b = r;
}
return a;
}
- 最小公倍数的计算
最小公倍数可以通过两个数的乘积除以它们的最大公约数来计算。
代码实现:
int lcm(int a, int b) {
return a * b / gcd(a, b);
}
完整代码:
#include <stdio.h>
int gcd(int a, int b) {
int r;
while (b != 0) {
r = a % b;
a = b;
b = r;
}
return a;
}
int lcm(int a, int b) {
return a * b / gcd(a, b);
}
int main() {
int a, b;
printf("请输入两个整数:");
scanf("%d %d", &a, &b);
printf("最小公约数为:%d\n", gcd(a, b));
printf("最大公倍数为:%d\n", lcm(a, b));
return 0;
}
``

原文地址: http://www.cveoy.top/t/topic/cc44 著作权归作者所有。请勿转载和采集!