首先你需要把那个else if (n==0, n==1) 的逗号改成或:else if (n == 0 || n == 1)这样的话才正确,否则输入0就报错了。关于递归顺序问题就是一层层的展开,没什么复杂的,哪里不明白?
比如求fac(5);fac(5)=fac(4)*5;就必须去求fac(4),依次类推,只有当n=1时有了值,再反过来求fac(2)……
这个递归是有点复杂,搞清了就简单,建议请人现场讲解,文字说也是难看懂的
关键语句: f=fac(n-1)*n;