c语言

c语言如何求任意整数的最大公约数

小亿
112
2023-08-08 03:20:45
栏目: 编程语言

C语言中可以使用辗转相除法来求任意整数的最大公约数。具体步骤如下:

  1. 定义一个函数 gcd,接受两个整数参数 ab,表示待求最大公约数的两个整数。

  2. 在函数中使用循环来进行辗转相除的计算,直到 b 变成 0,此时 a 的值就是最大公约数。

  3. 在循环中,先将 ab 的值交换,然后计算 ab 取模的结果,并将这个结果赋给 a

  4. 最后返回 a 的值,即为最大公约数。

下面是使用辗转相除法求最大公约数的示例代码:

#include <stdio.h>
int gcd(int a, int b) {
while (b != 0) {
int temp = a;
a = b;
b = temp % b;
}
return a;
}
int main() {
int a, b;
printf("请输入两个整数:");
scanf("%d %d", &a, &b);
int result = gcd(a, b);
printf("最大公约数为:%d\n", result);
return 0;
}

在上面的示例中,我们首先调用 gcd 函数,然后通过 scanf 获取用户输入的两个整数。接下来,将这两个整数作为参数传递给 gcd 函数,并将返回的结果赋给 result 变量。最后,使用 printf 将最大公约数输出到控制台上。

0
看了该问题的人还看了