c语言递归算法如何实现

  介绍

这篇文章将为大家详细讲解有关c语言递归算法如何实现,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

递归就是一个方法自己调用自己。在编程语言中,如果一个程序允许您在同一个函数中调用一个函数,那么它就被称为函数的递归调用。

空白递归(){   递归();/*函数调用本身*/}      int main () {   递归();   }

C语言支持递归,即一个调用自身的函数。但是在使用递归时,程序员需要小心定义函数的退出条件,否则它将进入无限循环。

递归函数对于解决许多数学问题非常有用,例如计算一个数的阶乘,生成斐波那契级数等。

<强>数的阶乘

下面的例子使用递归计算一个给定的数的阶乘函数

# include & lt; stdio.h>      长无符号长整数的阶乘(unsigned int i) {      如果(我& lt;=1) {   返回1;   }   我返回我* ! (- 1);   }      int main () {   int i=12;   printf (“Factorial (% d % d \ n",我!(我));   返回0;   }

输出:

12是479001600的阶乘

<强>斐波那契系列

以下示例使用递归函数为给定数字生成斐波那契(斐波那契)系列

# include & lt; stdio.h> int斐波纳契(int i) {      如果(i==0) {   返回0;   }      如果(i==1) {   返回1;   }   返回斐波纳契(张)+斐波纳契(我2);}int主要(){      int我;      (我=0;我& lt;10;我+ +){   printf (“% d \ t \ n",斐波纳契(我));   }      返回0;}

输出:

0   1   1   2   3.   5   8   13   21   34

关于c语言递归算法如何实现就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

c语言递归算法如何实现