求最大公约数(辗转相除)

88 阅读1分钟

在辗转相除求最大公约数的时候,不需要 判断这两个数的大小

#include<stdio.h>
int gcd(int m,int n);

int main()
{
	int m,n;
	scanf("%d%d",&m,&n);
	printf("%d\n",gcd(m,n));
	return 0;	
} 
int gcd(int m,int n)
{
	int t;
	if(m==0)
		return n;
	if(n==0)
		return m;
	while(n)
	{
		t=m%n;
		m=n;
		n=t;
	}
	return m;
}