C语言!!!
C语言!!!递归求最大公约数原理,比如18和3,求详细递归解答,我只想知道他这个是怎么递归求出的...
C语言!!!递归求最大公约数原理,比如18和3,求详细递归解答,我只想知道他这个是怎么递归求出的
展开
2个回答
展开全部
原理就是:
用比较大的数去除比较小的数
然后用比较小的数去除余数(这时候比较小的数就变成了比较大的数,余数变成了比较小的数)
以此类推
来一个例子,比如说18和12求最大公约数:
divisor(18, 12)
18 / 12 余 6, 余数不为0继续 (这时候再进行递归运算时,m=12,n=6)
divisor(12,18%12)
12/6余0,余数为0,停止,找到6是最大公约数
不懂继续追问吧,请采纳,谢谢!
追问
有一个疑问
传递参数divisor(18,12)
18,18/12=余6
这里m是怎么变成12的?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询