小编ibr*_*ala的帖子

为什么此功能按升序打印1 2 3 4 5

我尝试搜索答案,但无法获得任何令人信服的答案。有人可以解释一下此c ++代码的打印方式1 2 3 4 5吗?

我明白到何时为止n=1。when时n=1fun(n-1) = fun(1-1) = fun(0)由于n>0不满意而没有执行,因此现在cout << n << endl将执行并n仍然等于,1但是在打印后1应该停止?如何处理之前的通话?它如何打印2 3 4 5

同样,在cout << n << endl上方时,fun(n-1)它在打印时也很有意义5 4 3 2 1

#include <iostream>

using namespace std;

void fun(int n)
{
    if (n > 0) {
        fun(n - 1);
        cout << n << endl;
    }
}

int main()
{ …
Run Code Online (Sandbox Code Playgroud)

c++ recursion

0
推荐指数
1
解决办法
121
查看次数

标签 统计

c++ ×1

recursion ×1