一个简单的C语言程序,包含递归。我对递归不是太懂,求详解递归过程及结果。关键要的是递归过程。

2024-12-19 05:11:44
推荐回答(3个)
回答1:

分析过程:

根据递归函数分析:
p(w) = p(w-1) w p(w-1)

p(3) = p(2) 3 p(2)
p(2) = p(1) 2 p(1)
p(1) = p(0) 1 p(0)

由于p(0)不会输出任何字符,故
p(2) = p(0) 1 p(0) 2 p(0) 1 p(0)
= 1 2 1
p(3) = p(2) 3 p(2)
= 1 2 1 3 1 2 1

回答2:

函数-等价于 输出
p(3)----p(2) 3 p(2)------1 2 1 3 1 2 1
p(2)----p(1) 2 p(1) ----- 1 2 1
p(1)----p(0) 1 p(0)-------1

程序输出:
1 2 1 3 1 2 1

回答3:

答案 1 2 1 3 1 2 1
这题递归的确有些绕,不过你可以在vc++中用跟踪内存的方法看下递归的全过程