C语言课程最大公约数和最小公倍数设计代码
时间: 2023-11-29 13:00:57 浏览: 65
C语言实现最大公约数和最小公倍数算法
最大公约数(即最大公因数)可以使用欧几里得算法,也称为辗转相除法,根据以下公式进行计算:
gcd(a, b) = gcd(b, a mod b)
最小公倍数可以根据以下公式计算:
lcm(a, b) = a * b / gcd(a, b)
下面是使用C语言实现这两个函数的代码示例:
```c
#include <stdio.h>
// 计算最大公约数
int gcd(int a, int b) {
if (b == 0) {
return a;
} else {
return gcd(b, a % b);
}
}
// 计算最小公倍数
int lcm(int a, int b) {
return a * b / gcd(a, b);
}
int main() {
int a, b;
printf("请输入两个整数:");
scanf("%d %d", &a, &b);
printf("最大公约数:%d\n", gcd(a, b));
printf("最小公倍数:%d\n", lcm(a, b));
return 0;
}
```
在上述代码中,我们使用了递归来实现求最大公约数的函数。同时,我们在主函数中通过使用 `scanf` 函数获取用户输入的两个整数,并使用 `printf` 函数输出计算结果。
阅读全文