C语言的函数调用是递归吗? 20

 我来答
遗失的迷惘O
2019-02-08 · TA获得超过477个赞
知道小有建树答主
回答量:382
采纳率:77%
帮助的人:99.7万
展开全部

“递归”外在表现出来的形式,是:函数自己调用自己。也就是说:如果我们定义了一个函数fun(),那么,在fun函数体中,fun这个函数自己调用自身 ,这就是表示:递归调用。

我们来看一下,下面这个程序段:


上述C语言程序中,第7行到第10行,就是使用“循环”的方式,来实现从0一直累加到100的和。大部分情况下,“循环”与“递归”之间,都可以相互转换。

​在使用递归的时候,需要注意以下两点:

需要有一个“递归出口”,如果没有一个出口,那么递归就会一直执行下去,一直到将“栈空间”占满为止。那时程序就会崩溃,所以一定是要有一个“递归出口”。

如果所要执行的次数比较多,可以尽量选择用“循环”的方式,因为使用“递归”的方式,程序执行的速度会比较慢。

百度网友9191b79
2019-02-08 · TA获得超过263个赞
知道小有建树答主
回答量:1259
采纳率:53%
帮助的人:47.6万
展开全部
没记错的话,C语言中的函数直接或间接调用自己的过程叫递归
例如 有main函数,函数A,C。
直接调用型递归:main函数调用函数A,而A不能直接解决问题,所以改变参数后去再次调用函数A。
比如有三个人,人1说他比人2小1岁,人2说他比人3小一岁,人3说他10岁,求人1几岁。就需要递归解决,
简介调用就是main调用A,A调用C,C又需要调用A,作用循环解决问题后由A回到main。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友bb9222d
2019-02-08 · TA获得超过2147个赞
知道大有可为答主
回答量:1.4万
采纳率:61%
帮助的人:466万
展开全部
程序调用自身的编程技巧称为递归( recursion)。递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
GTA小鸡
高粉答主

2019-02-07 · 醉心答题,欢迎关注
知道大有可为答主
回答量:2.6万
采纳率:78%
帮助的人:1.3亿
展开全部
函数在内部调用自己的过程称为递归。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友67b3a2f
2019-02-07 · 超过12用户采纳过TA的回答
知道答主
回答量:49
采纳率:77%
帮助的人:7.3万
展开全部
递归只是一个算法,c函数是面向对象的方法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式