用C需要做。7-125-4求m和n的最大公约数求m和n的最大公约数,其中m和n从键盘输入。输入格式:例如:在一行中输入2个整数,中间用空格分隔。输出格式:例如:输出m和n的最大公约数。输入样例:6 9。输出样例:6和9的最大公约数是3。
时间: 2024-03-23 16:39:05 浏览: 56
好的,这是一个求最大公约数的问题,可以使用辗转相除法来解决。我可以给您提供一个C语言的解法,您可以将以下代码保存为一个.c文件并编译运行:
```c
#include <stdio.h>
int gcd(int a, int b);
int main() {
int m, n;
printf("请输入两个整数:");
scanf("%d%d", &m, &n);
printf("%d和%d的最大公约数是%d\n", m, n, gcd(m, n));
return 0;
}
int gcd(int a, int b) {
int r;
while (b > 0) {
r = a % b;
a = b;
b = r;
}
return a;
}
```
这段代码中,gcd函数即为辗转相除法求解最大公约数的函数,主函数中通过scanf从键盘输入两个整数,然后调用gcd函数求解最大公约数并输出结果。
相关问题
c语言求m和n最大公约数
以下是用C语言求m和n最大公约数的代码:
```c
#include <stdio.h>
int main() {
int m, n, t, r;
printf("请输入两个数:\n");
scanf("%d%d", &m, &n);
if (m < n) {
t = m;
m = n;
n = t;
}
while (n != 0) {
r = m % n;
m = n;
n = r;
}
printf("最大公约数为:%d\n", m);
return 0;
}
```
用C语言做。求m和n的最大公约数。求m和n的最大公约数,其中m和n从键盘输入。输入格式:例如:在一行中输入2个整数,中间用空格分隔。输出格式:例如:输出m和n的最大公约数。
好的,这是一个求最大公约数的C语言程序,可以满足您的需求:
```c
#include <stdio.h>
int main() {
int m, n, r;
printf("请输入两个整数m和n(用空格分隔):");
scanf("%d %d", &m, &n);
while(n != 0) {
r = m % n;
m = n;
n = r;
}
printf("最大公约数为:%d\n", m);
return 0;
}
```
这个程序使用了辗转相除法求最大公约数,即从两个数中较小的数开始,用较大的数去除它,再用余数去除刚才的除数,如此循环,直到余数为0时,最后的被除数即为最大公约数。
阅读全文