递归函数:
自己调用自己的函数就是递归函数,每调用一层就进入新的一层函数,当进入最后一层执行完程序,再一层一层往回退出。
简单总结:
就是不断调用自己的函数,但要有个结束条件。
例如一个阶乘函数:
int jc(int n)
{
return(n > 1)? return n*jc(--n):1;
}
/*输入一个数n>0,jc函数会不断调用自己n*jc(n-1)、(n-1)*jc(n-1-1)···直到n为1,函数运行最后一层结束调用自己,并且返回值1。
开始执行之前层,2*jc(1)=2; 3*jc(2)=6···到最开始一层,返回整个阶乘函数的值*/
条件
递归函数应该只进行有限次的调用,否则会进入死循环