c语言函数的递归调用问题 c语言递归函数的概念及用法

C语言函数递归调用?

第一级递归:n=483,i=n/10=48≠0

成都创新互联公司2013年开创至今,先为龙泉等服务建站,龙泉等地企业,进行企业商务咨询服务。为龙泉企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

注意此时先递归调用convert(48),待递归返回再输出当前n的个位数字n%10=3

第二级递归:n=48,i=n/10=4≠0

此时继续递归调用convert(4),待递归返回再输出当前n的个位数字n%10=8

第三级递归:n=4,i=n/10=0

此时递归终止,先输出当前n的个位数字n%10=4

再返回上一级递归输出8,最后返回第一级递归输出3

因此最终输出为:4 8 3

c语言函数递归调用

我给你举个简单的例子你就明白了,你可以假设n=3

然后代入这个函数,a(3)=a(2)+5;而a(2)=a(1)+5;a(1)=1

所以最后就是a(3)=1+5+5=11…

同理你可以算出a(10)=1+5*9=46

满意请采纳

c语言函数的递归调用?

递归有一个堆栈的概念,那就意味着他是一个反理解的过程:就象数学递推一样,你知道第一项,第二项,又知道通项公式,那你就可以知道任何一项。

然后你看代码:fun(0)==0,fun(1)==1;是告诉你一二项。

fun(n)==fun(n-1)+fun(n-2);是告诉你通项公式。那么,你就可以知道任何一项。你这样理解就差不多了,具体机器是怎么操作的,那很复杂的,也不需要明白!!!!


网站名称:c语言函数的递归调用问题 c语言递归函数的概念及用法
本文网址:http://hbruida.cn/article/ddoopjp.html