c语言中如何求最小公倍数
时间: 2024-09-29 09:06:20 浏览: 109
C语言求最小公倍数2023
在 C 语言中,求两个整数的最小公倍数(LCM)通常采用欧几里得算法(也称辗转相除法),这是一种基于数学原理的高效计算方法。以下是基本步骤:
1. 定义函数 `gcd` 计算两个数的最大公约数(GCD)。GCD 可以通过递归或循环实现,比如欧几里得算法:
```c
int gcd(int a, int b) {
if (b == 0)
return a;
else
return gcd(b, a % b);
}
```
2. 使用 GCD 函数求 LCM,公式是:`lcm(a, b) = |a * b| / gcd(a, b)`。由于 GCD 是正的,我们可以直接去除绝对值符号。
```c
int lcm(int a, int b) {
return a * b / gcd(a, b);
}
```
你可以像这样调用这两个函数来得到两个数的最小公倍数:
```c
int main() {
int num1 = 15, num2 = 20;
int result = lcm(num1, num2);
printf("The least common multiple of %d and %d is %d.\n", num1, num2, result);
return 0;
}
```
阅读全文