C 对递归感到困惑(啤酒瓶)

C 对递归感到困惑(啤酒瓶),c,recursion,C,Recursion,我正在阅读以下解释: ,但我仍然不理解singSongFor函数的最后一部分。当它到达最终打印F时,为什么不简单地打印出箱子里有0瓶啤酒,因为在打印出墙上没有更多的啤酒瓶后,NumberOfBattles是0。我不明白为什么它从1开始,为什么它在没有增加NumberOfBa瓶的值的情况下会增加。在调用singSongFor(OneLess)之前,看看分配给OneLess的是什么(顺便说一句,这个变量不需要,因为你可以简单地调用singSongFor(NumberOfBa瓶-1))那为什么不从4点

我正在阅读以下解释:
,但我仍然不理解singSongFor函数的最后一部分。当它到达最终打印F时,为什么不简单地打印出箱子里有0瓶啤酒,因为在打印出墙上没有更多的啤酒瓶后,NumberOfBattles是0。我不明白为什么它从1开始,为什么它在没有增加NumberOfBa瓶的值的情况下会增加。

在调用
singSongFor(OneLess)
之前,看看分配给
OneLess
的是什么(顺便说一句,这个变量不需要,因为你可以简单地调用
singSongFor(NumberOfBa瓶-1)
)那为什么不从4点开始呢?没关系。我设法弄明白了。