函数的递归调用,不是很明白来个高手帮忙讲解下!
请帮忙分析这个代码递归调用的过程,#include<stdio.h>
unsigned long mu1(int n)
{
unsigned long p;
if(n>1)
p=n*mu1(n-1); /* 这里是怎么执行的哦 */
else
p=1L; /* 1L是什么意思? */
return (p);
}
main()
{
int m;
puts("Calculate n!n=?\n");
scanf("%d",&m);
printf("%d!=%1d\n",m,mu1(m));
}