C语言精髓:最大公约数

//辗转相除法的基本思路是:
//对正整数a和b,连续进行求余运算,直到余数为0为止,
//此时非0的除数就是最大公约数。设r=a mod b表示a除以b的余数,
//若r≠0,则将b作为新的a,r作为新的b,
//重复a mod b运算,直到r=0时为止,此时b为所求的最大公约数。

//例如,50和15的最大公约数的求解过程可表示为:Gcd(50, 15)=Gcd(15, 5)=Gcd(5, 0)=5。


#include 

int Gcd(int a, int b)
{
    if (a%b == 0)
        return b;
    else
        return Gcd(b,a%b);
}

int main(int argc, char *argv[])
{
	printf("%d\n",Gcd(50,15));

	return 0;
}


你可能感兴趣的:(VC)