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);

  }

}

 

 

 

posted on 2013-09-09 17:42  laihaiteng  阅读(399)  评论(0编辑  收藏  举报

导航