c语言求最小公倍数。
时间: 2024-12-28 12:21:02 浏览: 14
### C语言实现求最小公倍数
在C语言中,可以通过多种方式来计算两个整数的最小公倍数。一种常见的方法是先找到这两个数的最大公约数,再通过最大公约数来推导出最小公倍数。
下面是一个完整的代码示例:
```c
#include <stdio.h>
int gcd(int a, int b) {
if (b == 0)
return a;
return gcd(b, a % b);
}
int lcm(int num1, int num2) {
return (num1 * num2) / gcd(num1, num2);
}
int main() {
int num1, num2;
printf("请输入两个正整数: ");
scanf("%d %d", &num1, &num2);
// 确保输入的是正整数
if (num1 <= 0 || num2 <= 0) {
printf("请输入有效的正整数。\n");
return 1;
}
int result = lcm(num1, num2);
printf("两数的最小公倍数为:%d\n", result);
return 0;
}
```
此代码首先定义了一个`gcd`函数用于计算最大公约数[^2]。接着定义了另一个名为`lcm`的函数用来基于之前得到的最大公约数值计算最小公倍数。最后,在`main`函数里读取用户输入并调用了上述辅助函数完成最终的结果输出。注意这里加入了对于非正值输入数据的有效性验证逻辑[^3]。
阅读全文