函数嵌套和递归调用.ppt

函数嵌套和递归调用.ppt

ID:59041145

大小:4.32 MB

页数:8页

时间:2020-10-29

函数嵌套和递归调用.ppt_第1页
函数嵌套和递归调用.ppt_第2页
函数嵌套和递归调用.ppt_第3页
函数嵌套和递归调用.ppt_第4页
函数嵌套和递归调用.ppt_第5页
资源描述:

《函数嵌套和递归调用.ppt》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、函数的嵌套与递归调用教学内容函数的嵌套调用函数的递归调用函数的定义与使用函数的嵌套调用C规定:函数定义不可嵌套,但可以嵌套调用函数main()调用函数a结束a函数b函数调用函数b函数嵌套调用应用例1:计算s=(1*1)!+(2*2)!+(3*3)!+(4*4)!+(5*5!)分析:定义两个函数,一个是用来计算平方值的函数w1,另一个是用来计算阶乘值的函数w2。主函数先调w1计算出平方值,再在w1中以平方值为实参,调用w2计算其阶乘值,然后返回w1,再返回主函数,在循环程序中计算累加和。函数

2、的递归调用定义:函数直接或间接的调用自身叫函数的递归调用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()函数递归调用应用例2:用递归法计算n!1(n=0,1)n!=n*(n-1)!(n>1)例3:Hanoi(汉诺)塔问题。这是一个古典的数学问题,是一个只有

3、用递归方法(而不可能用其他方法)解决的问题。问题是这样的:古代有一个梵塔,塔内有3个座A、B、C,开始时A座上有64个盘子,盘子大小不等,大的在下,小的在上(如图)。有一个老和尚想把这64个盘子从A座移到C座,但每次只允许移动一个盘,且在移动过程中在3个座上都始终保持大盘在下,小盘在上。在移动过程中可以利用B座,要求编程序打印出移动的步骤。1.C语言中,函数可以嵌套调用,不可以嵌套定义2.函数递归调用指对函数自身的调用,算法描述为a.if(递归终止条件)return(条件终止时的值)b.elsereturn

4、递归公式1.求两个数的最大公约数(用递归调用)2.求两个数的最小公倍数(用嵌套调用)

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。