欧几里德的最大公约数的公式gcd(m , n)= gcd(n,m mod n).根据该公式求最大公约数的算法如下:
#include <stdio.h>
#include <stdlib.h>
//最大公约数算法
int Euclid(int a,int b)
{
int m , n , i;
m = a;
n = b;
while(n != 0)
{
i = m % n;
m = n;
n = i;
}
return m;
}
//测试代码
void main()
{
int i,a,b;
printf("please input the numbers:/n");
scanf("%d %d",&a,&b);
i = Euclid(a,b);
printf("the result is : %d/n",i);
}