我想问例子阶乘递归那道题
新手。。我的递归理解是裤子脱掉然后又穿上,这样理解对吗?
①就算自定义函数写在main函数前面,程序还是从main开始执行吗? ②else if(n==0||n==1)这句里的n==0貌似根本不会有这种情况,他的意义是什么呢? ③定义n=5,那么第一次是factorial(5-1)*5,4*5=20,这个结果存到哪里去了? ④运行到factorial(2-1)*2的时候,factorial(1)符合了else if(n==0||n==1)里面的n==1,执行result=1,下一步应该执行哪里呢?这时n=1,重新开始执行的话那就不是陷在else if了吗,那么是怎么1*2*3....5的.
⑤还有。。if(n<0)这句好像也没执行过。。。
我的废话会不会太多了,希望大神针对我的12345顺序回答,谢谢!!