递归的运行机制简单理解

C语言递归算法是怎么执行的
<span style="font-size:12px;">#include <stdio.h>

void net(int);

int main()
{
	    net(1);
	    return 0;
}

void net(int n)
{
	    printf("数字%d:n的地址是:%p\n", n, &n);
	    if(n<4)
	    {
		        net(n+1);
		        printf("数字%d:n的地址是:%p\n", n, &n);
	    }
}</span>

递归就是自己调用自己,例如你写的 net()函数,函数自己调用自己。
它调用自己的时候,不管程序运行到了哪,见到自己直接跳转,进入到下一个自己中运行,直到不满足跳入下一个自己的条件时,运行完当前函数,然后回到前一个自己中,回到跳
出位置,继续运行没有完事的部分,直到完成当前函数,然后回到上一个自己。。。。这样直到回到第一个自己,运行开始跳出时没有完成部分的程序。这就是递归;

posted @ 2016-07-22 22:42  弃用博客  阅读(238)  评论(0编辑  收藏  举报