求两个数m和n的最大公约数,C语言
时间: 2024-10-19 15:05:23 浏览: 35
C语言编程实现求两个数的最大公约数和最小公倍数
在C语言中,求两个整数m和n的最大公约数(Greatest Common Divisor,简称GCD),可以使用欧几里得算法(Euclidean Algorithm)。以下是简单的实现:
```c
#include <stdio.h>
// 定义函数计算最大公约数
int gcd(int m, int n) {
if (n == 0)
return m; // 如果n为0,则m就是最大公约数
else
return gcd(n, m % n); // 递归调用gcd,每次用较小的数替换原来的n
}
int main() {
int m, n;
printf("请输入两个整数:");
scanf("%d %d", &m, &n);
int result = gcd(m, n);
printf("两数的最大公约数是:%d\n", result);
return 0;
}
```
在这个程序中,`gcd`函数通过不断将较大数除以较小数取余数,直到余数为0,此时较小的数即为最大公约数。在主函数中,用户输入两个数,然后调用`gcd`函数计算结果。
阅读全文