c语言,编写程序实现求两个数的最小公倍数,输入要有相应的提示语句,要求输入两个数字范围在1-00之间,若不符合要求继续输入,直到符合要求为止,最小公倍数求解由子函数完成
时间: 2024-10-22 11:16:03 浏览: 71
在C语言中,你可以通过以下步骤编写一个程序来求两个数的最小公倍数(LCM)。首先,我们需要定义一个子函数`gcd()`用于计算最大公约数(GCD),然后利用辗转相除法或欧几里得算法来获取GCD,最后用两数乘积除以它们的最大公约数得到最小公倍数。以下是完整的代码示例:
```c
#include <stdio.h>
// 定义求最大公约数的函数
int gcd(int a, int b) {
if (b == 0)
return a;
else
return gcd(b, a % b);
}
// 主函数,用于接收用户输入并计算最小公倍数
int main() {
int num1, num2, lcm;
printf("请输入两个1到100之间的整数(每行一个):\n");
// 循环接收输入,直到输入满足条件
while (1) {
scanf("%d%d", &num1, &num2);
if (num1 >= 1 && num1 <= 100 && num2 >= 1 && num2 <= 100) {
// 调用子函数求最小公倍数
lcm = num1 * num2 / gcd(num1, num2);
break; // 输入有效,跳出循环
} else {
printf("输入错误,请确保数值在1到100之间。\n");
}
}
printf("这两个数的最小公倍数是:%d\n", lcm);
return 0;
}
```
在这个程序中,用户会被提示输入两个数,如果输入不符合要求,程序会一直提示用户重新输入,直到输入的数在指定范围内。
阅读全文