求m和n的最大公约数,我写了一个递归函数,不知道为什么不行
// zui da gong yue shu#include <stdio.h>
int aaa(int max,int min)
{
int i=max-min;
if(i>min) aaa(i,min);
if(i<min) aaa(min,i);
if(i=min) return i;
}
void main()
{
int m,n;
scanf("%d %d",&m,&n);
int min=m;
int max=n;
if(m>n)
{
min=n;
max=m;
}
int result=aaa(max,min);
printf("%d",result);
}
求高手指点,如果想用递归函数解决,该怎么写