这个递归题为什么会这样输出啊?
这个不是应该在第一个 0 处 就截止了吗??为什么还会出现 0 0 1 2 3 4 5??? 本帖最后由 sunrise085 于 2020-9-19 21:59 编辑哎,又遇到一个。。。
很多人都会犯和你一样的错误,函数调用之后还需要返回啊。。。认为到0就结束的都是没想着返回。。。
你看 if 语句下面还有一句 printf 呢,这个print输出的是后半个
if 前的 printf 输出的是5 4 3 2 1 0 ,if 后面的printf 输出的是 0 0 1 2 3 4
自己在纸上写一下就知道了
记住一点,从哪里调用的函数,函数结束后就回到哪里
自己手写运行的时候,可以将数字调小一点,例如不用5,用2 递归之后会回溯 sunrise085 发表于 2020-9-19 21:58
哎,又遇到一个。。。
很多人都会犯和你一样的错误,函数调用之后还需要返回啊。。。认为到0就结束的都是 ...
从哪里调用的函数,函数结束后就回到哪里
记住了,谢谢! sunrise085 发表于 2020-9-19 21:58
哎,又遇到一个。。。
很多人都会犯和你一样的错误,函数调用之后还需要返回啊。。。认为到0就结束的都是 ...
谢谢
页:
[1]