你好,我有这段代码,我根据其他一些递归和阶乘程序编码,但我的问题是,我真的很困惑如何存储值并保留它,然后在最后返回它
int factorialfinder(int x)
{
if (x == 1)
{
return 1;
}else
{
return x*factorialfinder(x-1);
}
}
int main()
{
cout << factorialfinder(5) << endl;
}
Run Code Online (Sandbox Code Playgroud)
因此5进入,并通过一次又一次地调用它的函数乘以4,然后它变为1并返回阶乘答案
为什么?我不知道它是如何存储的,为什么返回1返回实际答案,它到底在做什么?