c语言编写输入两个正整数m和n,求求最大公约数和最小公倍数
时间: 2024-03-24 22:32:19 浏览: 77
大学经典C语言编程试题.doc
这里提供一种使用辗转相除法求解最大公约数和最小公倍数的C语言代码:
```c
#include <stdio.h>
int main() {
int m, n, r, gcd, lcm;
printf("请输入两个正整数:\n");
scanf("%d%d", &m, &n);
int a = m, b = n;
while (b != 0) {
r = a % b;
a = b;
b = r;
}
gcd = a;
lcm = m * n / gcd;
printf("最大公约数为:%d\n", gcd);
printf("最小公倍数为:%d\n", lcm);
return 0;
}
```
代码中使用了辗转相除法求解最大公约数,最小公倍数则可以通过公式m*n/d计算得出。同时,为了保留输入的原始值,代码中使用了两个变量a和b来进行计算。
阅读全文