编写c程序函数gcd(m,n)来计算整数m和n的最大公约数
时间: 2024-12-11 21:43:45 浏览: 5
gcd(m,n):用Euclid算法计算两个整数的最大公约数。-matlab开发
编写C程序中的`gcd`函数来计算两个整数`m`和`n`的最大公约数,可以使用欧几里得算法(也称辗转相除法)。以下是该函数的一个简单实现:
```c
#include <stdio.h>
// 定义一个递归函数来计算最大公约数
int gcd(int m, int n) {
if (n == 0) { // 当n为零时,m就是最大公约数
return m;
} else {
return gcd(n, m % n); // 递归调用,将n替换为m除以n的余数
}
}
int main() {
int m, n;
printf("请输入两个整数: ");
scanf("%d %d", &m, &n);
// 计算并打印结果
int result = gcd(m, n);
printf("最大公约数(gcd)为: %d\n", result);
return 0;
}
```
在这个程序中,用户输入两个整数,然后`gcd`函数通过不断减小较大的数直到其中一个变为0,实现了两个数的最大公约数计算。
阅读全文