第四章第四章 递归算法递归算法1ppt课件前面已经介绍了关于递归调用这样一种操作,而递归程序设计是C+语言程序设计中的一种重要的方法,它使许多复杂的问题变得简单,容易解决了。递归特点是:函数或过程调用它自己本身。其中直接调用自己称为直接递归,而将A调用B,B以调用A的递归叫做间接递归。2ppt课件【例【例1】给定给定n(n=1),用递归的方法计算用递归的方法计算1+2+3+4+.+(n-1)+n。【算法分析】本题可以用递归方法求解,其原因在于它符合递归的三个条件:(1)本题是累加问题:当前和=前一次和+当前项,而前一次和的计算方法与其相同,只是数据不同s(n)=s(n-1)+n;(2)给定n,所以是有限次的递归调用;(3)结束条件是当n=1,则s=1。【参考程序】#includeusingnamespacestd;intfac(int);/递归函数intmain()intt;cint;/输入t的值couts=fac(t)endl;/计算1到t的累加和,输出结果intfac(intn)if(n=1)return1;return(fac(n-1)+n);/调用下一层递归3ppt课件运行程序