整数最大公约数和最小公倍数c语言
时间: 2023-12-07 18:38:36 浏览: 104
以下是求整数最大公约数和最小公倍数的C语言代码示例:
1. 求两个正整数的最大公约数和最小公倍数
```c
#include <stdio.h>
int main() {
int a, b, i, gcd, lcm;
printf("请输入两个正整数:");
scanf("%d %d", &a, &b);
// 求最大公约数
for (i = 1; i <= a && i <= b; ++i) {
if (a % i == 0 && b % i == 0) {
gcd = i;
}
}
// 求最小公倍数
lcm = a * b / gcd;
printf("%d和%d的最大公约数是%d\n", a, b, gcd);
printf("%d和%d的最小公倍数是%d\n", a, b, lcm);
return 0;
}
```
2. 求两个正整数的最大公约数
```c
#include <stdio.h>
int main() {
int a, b, min, i, gcd;
printf("请输入两个正整数:");
scanf("%d %d", &a, &b);
// 求最小值
min = a < b ? a : b;
// 求最大公约数
for (i = min; i >= 1; --i) {
if (a % i == 0 && b % i == 0) {
gcd = i;
break;
}
}
printf("%d和%d的最大公约数是%d\n", a, b, gcd);
return 0;
}
```
3. 求两个正整数的最小公倍数
```c
#include <stdio.h>
int main() {
int a, b, max, lcm;
printf("请输入两个正整数:");
scanf("%d %d", &a, &b);
// 求最大值
max = a > b ? a : b;
// 求最小公倍数
while (1) {
if (max % a == 0 && max % b == 0) {
lcm = max;
break;
}
++max;
}
printf("%d和%d的最小公倍数是%d\n", a, b, lcm);
return 0;
}
```
阅读全文
相关推荐















