通过剖析这个简单的程序,来阐明递归的原理。
#include "stdio.h"
//recursion function
void fun(int i)
{
if(i>0)
{
fun(i/2);
}
printf("%d\n",i);
}
//main function
int main()
{
fun(3);
return 0;
}
每一次调用函数fun(),函数fun()都没有执行完,直到最后一次n不满足条件n>0时,最后一层的函数fun()执行完,然后导致次上层执行完,依次类推,直到第一层执行完,这个函数结束。
更多精彩资讯,请扫码关注