【发布时间】:2021-07-21 18:06:27
【问题描述】:
我想创建一个向上计数的递归函数,从 1 计数到一个随机正数,但该随机数是我可以给这个函数的唯一参数。 有没有办法解决这个限制,在我看来我至少需要一个给定变量的函数。局部变量只是用新的递归重置..
void numChainRecursive(int lastNum)
{
if(lastNum > 0)
{
printf("%d", lastNum);
numChainRecursive(lastNum - 1);
}
}
例如,如果 lastNum = 22,编译后我得到“222120[...]1”,但我希望它从 1 计数到 22
我只能用另一个给定变量的函数来解决这个问题,但我的目标是只使用一个给定的参数。
void numChainRecursive(int first, int last)
{
if(first <= last)
{
printf("%d", first);
numChainRecursive(first + 1, last);
}
}
【问题讨论】: