|
|
发表于 2018-6-25 16:27:10
|
显示全部楼层
本楼为最佳答案
本帖最后由 凌九霄 于 2018-6-25 16:42 编辑
- 递归开始(假设求10的二进制数)
- 1、transec(10) x=10
- 2、str1 = transec(5) x=5 str1 = ''
- 3、str1 = transec(2) x=2 str1 = ''
- 4、str1 = transec(1) x=1 str1 = ''
- 5、str1 = transec(0) x=0 所以执行else下语句, return '' 并退出transec(0)函数
- 6、执行transec(1) 函数下的return str1+str(1%2) return '' + '1' 并退出transec(1)函数
- 7、执行transec(2) 函数下的return str1+str(2%2) return '1' + '0' 并退出transec(2)函数
- 8、执行transec(5) 函数下的return str1+str(5%2) return '10' + '1' 并退出transec(5)函数
- 9、执行transec(10)函数下的return str1+str(10%2) return '101' + '0' 并退出transec(10)函数
- 递归结束
复制代码 |
|