问题:用递归实现求最大公约数和最小公数的算法
代码如下:
//递归实现求最大公约数 //递归求最大公数 int g(int num1,int num2) { int r; r = num1%num2; if( r == 0 )//递归结束条件 return num2; g(num2,r); } void main() { int num1 = 100, num2 = 16; int temp; if( num1 < num2 ) { temp = num1; num1 = num2; num2 = temp; } temp = g(num1,num2); printf("最大公约数为:%d\n",temp); printf("最小公倍数为:%d\n",(num1*num2)/temp); }