




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
函数的递归调用及实例主讲教师:金红内蒙古建筑职业技术学院4.2.6CONTENTS目录PART01函数的递归调用及实例01函数的递归调用及实例intf(intx){inty,z;z=f(y);//在执行f函数过程中又要调用f函数
return(2*z);}
在调用一个函数的过程中,又出现直接或间接地调用该函数本身,称为函数的递归调用。定义函数的递归调用及实例函数的递归调用及实例intf(intx){inty,z;……
z=f(y);…….return(2*z);}intf1(intx){inty,z;……
z=f2(y);…….return(2*z);}intf2(intt){inta,c;……
c=f1(a);…….return(3+c);}f()调f调f2调f1f1()f2()函数的递归调用及实例
有5个人坐在一起,问第5个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第3个人,又说比第2个人大2岁。问第2个人,说比第1个人大2岁。最后问第1个人,他说是10岁。请问第5个人多大?例age(5)=age(4)+2age(4)=age(3)+2age(3)=age(2)+2age(2)=age(1)+2age(1)=10用数学公式表述如下:age(n)=10(n=1)age(n-1)+2(n>1)函数的递归调用及实例age(5)=age(4)+2age(4)=age(3)+2age(3)=age(2)+2age(2)=age(1)+2age(1)=10age(5)=18age(4)=16age(2)=12age(3)=14A求解两个阶段:第一阶段回推、第二阶段递推。B递推结束的终止条件:第1个人10岁函数的递归调用及实例程序如下#include<stdio.h>intmain(){ intage(intn); //对age函数的声明
printf("NO.5,age:%d\n",age(5)); //输出第5个学生的年龄
return0;}intage(intn) //定义递归函数{ intc; //c用作存放函数的返回值的变量
if(n==1)
//如果n等于1
c=10;
//年龄为10
else
//如果n不等于1
c=age(n-1)+2;
//年龄是前一个学生的年龄加2(如第4个学生年龄是第3个学生年龄加2) return(c); //返回年龄}函数的递归调用及实例程序分析mainage(5)输出age(5)age(n)n=5c=age(4)+2age(n)n=4c=age(3)+2age(n)n=3c=age(3)+2age(n)n=2c=age(1)+2age(n)n=1c=10age(5)=18age(4)=16age(3)=14age(2)=12age(1)=10intage(intn){ intc;
if(n==1)
c=10;
else
c=age(n-1)+2; return(c);}c=age(1)+2递归的终结条件:n=0或n=1函数的递归调用及实例
求n的阶乘例#include<stdio.h>intfac(intn){intf;if(n<0)printf("n<0,dataerror!");elseif(n==0||n==1)f=1;elsef=fac(n-1)*n;return(f);}main(){intn,y;printf("Inputaintegernumber:");scanf("%d",&n);
y=fac(n);printf("%d!=%15d",n,y);}
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《贵州飞尚能源有限公司六枝特区兴旺煤矿(变更)矿产资源绿色开发利用方案(三合一)》评审意见
- 珠宝相关知识培训课件
- 2025年汕尾下载b2货运从业资格证模拟考试考试
- 印度课件+-2024-2025学年人教版七年级地理下册
- 养殖宠物基本知识培训课件
- 第二单元空气和氧气课题3制取氧气 第1课时实验室制取氧气的原理 分解反应教学设计-2024-2025学年九年级化学人教版(2024)上册
- 2025年西藏货运从业证考试内容
- 四川省南川区川东北名校2024-2025学年高二(上)期末物理试卷【含解析】
- 上海市静安区华东模范中学2024-2025学年高一(上)期末物理试卷【含解析】
- 2025届新高考历史冲刺热点复习中华文明的形成和发展时期-秦汉
- 2024年西安航空职业技术学院高职单招职业适应性测试历年参考题库含答案解析
- 临平区九年级上学期期末考试语文试题(PDF版含答案)
- 2024年港作拖轮项目可行性研究报告
- 2025年甘南州国控资产投资管理集团限公司人员招聘13人高频重点提升(共500题)附带答案详解
- 2025年四川成都农业科技中心管理人员招聘1人历年高频重点提升(共500题)附带答案详解
- 2025上海大学行政管理岗位及部分教育辅助岗位公开招聘19人高频重点提升(共500题)附带答案详解
- 巨量千川(中级)营销师认证考试题库(附答案)
- 地震应急预案桌面演练
- 安防监控基础知识培训
- 摆摊合伙经营合同范例
- TCABEE 063-2024 建筑光储直柔系统变换器 通 用技术要求
评论
0/150
提交评论