开发者社区> 学堂小助手> 正文

递归函数|学习笔记

简介: 快速学习递归函数
+关注继续查看

发者学堂课程【C语言学习教程递归函数】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/387/detail/4924


递归函数


内容介绍:

一、函数递归调用

二、举例说明

三、注意事项


一、函数递归调用

在一个函数中,直接或间接的调用了该函数本身


二、举例说明

1.求斐波纳契数列第N个元素(1、1、2、3、5、8、13...)

int Fibu(int n)

{

 if(1==n I|2==n)return 1;

 {

    return 1;

}

return Fibu(n-1)+Fibu(n-2);

}

int main(int argc, const char * argv[])  {

int age = funcAge(10);

printf("age  =  %d\n" ,age);

//1 1 1 1 2 3 5 8 13….

int n = fibFunc(5);

printf("n = %d\n",n);

// insert code here...

printf("Hello, World!\n");

return 0;

2.年龄问题 每个学生都比后面的学生大一岁

int funcAge(int n) {

if n == 1{

return 1;

}else {

   return funcAge(n-1)+1;

}

}


三、注意事项

使用函数递归调用时:

1.必须有一一个明确的结束递归条件,否则可能造成系统卡死

2.函数中每次调用该函数本身时,需解决的问题必须更小

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Python学习笔记:lambda表达式与函数式编程
1,lambda的一般形式是关键字lambda后面跟一个或多个参数,紧跟一个冒号,以后是一个表达式。lambda是一个表达式而不是一个语句。它能够出现在Python语法不允许def出现的地方。作为表达式,lambda返回一个值(即一个新的函数)。
1328 0
Node.js学习笔记(四、回调函数)
Node.js学习笔记(四、回调函数)
33 0
开发指南—函数—数学函数
本文介绍了PolarDB-X支持的数学函数。
29 0
EL 函数库|学习笔记
快速学习 EL 函数库
29 0
使用OpenApi弹性释放和设置云服务器ECS释放
云服务器ECS的一个重要特性就是按需创建资源。您可以在业务高峰期按需弹性的自定义规则进行资源创建,在完成业务计算的时候释放资源。本篇将提供几个Tips帮助您更加容易和自动化的完成云服务器的释放和弹性设置。
18693 0
Node.js学习笔记(十、函数)
Node.js学习笔记(十、函数)
23 0
1783
文章
0
问答
来源圈子
更多
技术图谱:由专家组参与技术图谱的绘制与编写,知识与实践的结合让开发者们掌握学习路线与逻辑,快速提升技能 电子书:电子书由阿里内外专家打造,供开发者们下载学习,更与课程相结合,使用户更易理解掌握课程内容 训练营:学习训练营 深入浅出,专家授课,带领开发者们快速上云 精品课程:汇集知识碎片,解决技术难题,体系化学习场景,深入浅出,易于理解 技能自测:提供免费测试,摸底自查 体验实验室:学完即练,云资源免费使用
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载