Euclid算法-计算两个正整数的最大公约数

今天在 Linux C编程一站式学习中看到一个练习题,发现这个求最大公约数的算法,记录下来,以便将来用得上。

Euclid算法,求两个正整数a和b的最大公约数:

1、如果a除以b能整除,则最大公约数是b;

2、否则,最大公约数等于b和a%b的最大公约数。

C语言实现:

int gcd(int a, int b)

{

  if(a % b == 0)

  {

    return b;

  }

  else

  {

    return gcd(b, a % b);

  }

}

原文地址:https://www.cnblogs.com/laihaiteng/p/3310296.html