×
单片机 > 单片机程序设计 > 详情

C51学习心得体会,递归调用程序设计举例

发布时间:2020-05-29 发布时间:
|

迭代(循环)与递归(调用)对比

(1)二者都是建立在控制结构基础上的,迭代使用的是循环结构,递归使用的是选择机构;

(2)二者都用到了循环,迭代明确使用循环结构,递归通过反复调用函数实现循环;

(3)二者都用到了终止条件测试,迭代在继续循环条件为假时结束,递归在到达基本实例时终止的。

(4)二者都可能是无限的。


递归举例

1、阶乘 N!=N*(N-1)*...*2*1

long factorial(long number)

{

if(number<=1)

return 1;

else

return (number*factorial(number-1));

}


2、求和N+(N-1)+(N-2)+...+2+1

int sum(int number)

{

if(number<=0)

return 0;

else

return (number+sum(number-1));

}


关键字:C51  递归调用  程序设计

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
浅谈AVR中定时器几种工作模式