我是靠谱客的博主 俊秀大神,最近开发中收集的这篇文章主要介绍递归的过程,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

递归:自己调用自己

列如:

void function1()
{
    function1();
}

函数function1()自己调用了自己,这是一个递归函数

递归函数的调用方式:

1、直接调用:自己的函数体内部调用自己

        例:

void function1()
{
    function1();
}

2、间接调用:其它函数内部调用

        例:

void function1()
{
    function1();
}
void function2()
{
    function1();
}

递归的过程:

       列如:将一个十进制数转换为二进制输出显示的递归函数

void function(int n)
{
	if(n!=0)
	{
		int temp=n%2;
		n/=2;
		function(n);
		printf("%d ",temp);
	}
}

 

         若n=10,则应该输出的二进制数为1010,此时的temp==0假如把函数开始作为第一层,执行到function(n)时进入第二层此时n==5,temp==1执行到function(n)时进入第三层,此时n==2,temp==0再次执行到function(n)时,进入第四层,此时n==1,temp==1再次执行到function(n)时,进入第五层,此时n==0,此时n不满足if(n!=0){}的条件,第五层结束返回第四层,接着执行printf()语句也就是输出1,执行结束后返回第三层接着输出0,输出完毕接着返回第二层输出1,输出完毕返回第一层输出0,然后整个函数结束,像这样一个过程就是递归的过程。

 

 

 

最后

以上就是俊秀大神为你收集整理的递归的过程的全部内容,希望文章能够帮你解决递归的过程所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部