C语言入门开发-递归

一个函数调用自身,成为递归函数
凡事循环能做到的事,递归都能做到
[方法]
1、找出临界条件
2、找出这一次和上一次的关系
3、假设当前函数已经能用。调用自身机上上一次结果,求出本次结果

include

int sum(int a);
//1+2+3+...+a的和
int main ()
{

int ret = 0;

ret = sum(5);

printf("ret = %d\n",ret);
return 0 ;

}

int sum(int a )
{
if(a == 1)
{
return 1;
}

return sum (a - 1) + a;

}

// 5 + sum(4)
// 5 + 4 + sum(3)
// 5 + 4 + 3 sum(2)
// 5 + 4 + 3 + 2 + sum(1)
// 5 + 4 + 3 + 2 + 1

你可能感兴趣的:(C语言入门开发-递归)