当前位置:三九宝宝网 → 宝宝教育 → 教学论文 → 正文

c语言中什么是函数的递归能举个例子么

更新:12-30 整理:39baobao.com
字体:

[C语言:用递归的方式对数组排序]#include <stdio.h> #define N 8 void selection_sort(int a[], int n) { daoint i, t, imax = 0; if(n < 1) return; for(i = 1; i < n; ++i) { 回if(a[imax] < a[i]) imax...+阅读

所谓递归,说的简单点,就是函数自己调用自己,然后在某个特定条件下。结束这种自我调用。

如果不给予这个结束条件,就成了无限死循环了。这样这个递归也就毫无意义了。

如下面问题

1 1 2 3 5 8 13 21 ........n

分析可以看出, i 表示第几个数, n 表示该数的值

当i = 1 时, n = 1;

当i = 2 时, n = 1;

当i = 3 时 n = i1 + i2;

当i = 4 时 n = i2 + i3

所以可以写个函数

int fun(int n) // 这里的n代表第几个数

{

if(1 == n || 2 == n) // 第一个数

{

return 1;

}

else

{

return fun(n - 1) + fun(n - 2); // 这里就是自己调用自己,形成循环自我调用。

}

}

注: 以上代码只是用来演示递归,不包含错误校验。

在实际生产过程中。该代码不够健壮。

如此,就完成了递归。你就可以求得第n个数了。

何时考虑使用递归。

当你分析一个问题的时候,发现这个问题,是一个自我循环时,而且这个自我循环到一个给定值,就可以终止的时候,你就快要考虑递归了。

本文地址:https://www.39baobao.com/show/29_16879.html

以上内容来自互联网,请自行判断内容的正确性。若本站收录的信息无意侵犯了贵司版权,请联系我们,我们会及时处理和回复,谢谢.

以下为关联文档:

求C语言库函数大全int isalpha(int ch) 若ch是字母('A'-'Z','a'-'z')返回非0值,否则返回0 int isalnum(int ch) 若ch是字母('A'-'Z','a'-'z')或数字('0'-'9') 返回非0值,否则返回0 int isascii(int ch...

求C语言库函数大全请大家帮忙谢了int isalpha(int ch) 若ch是字母('A'-'Z','a'-'z')返回非0值,否则返回0 int isalnum(int ch) 若ch是字母('A'-'Z','a'-'z')或数字('0'-'9') 返回非0值,否则返回0 int isascii(int ch...

c语言中的库函数包括了些什么math.h 函数名:abs 功能:求整数的绝对值 用法:int abs(int i) 函数名: sqrt 功 能: 计算平方根 用 法: double sqrt(double x); assert.h 函数名: assert 功 能: 测试一个条件并可能...

C语言中对内存进行操作的标准库函数有哪些有些函数可用来拷贝、比较和填写任意的内存块,它们都带有void。类型(并不指向任何具体类型的指针)的参数,可以处理指向任何类型的指针。 有两个函数(有点象strncpy()函数)可用来拷...

c语言函数大全电子书A、传统 C++: #include //设定插入点 #include //字符处理 #include //定义错误码 #include //浮点数处理 #include //文件输入/输出 #include //参数化输入/输出 #include...

已有函数调用语句c sumn:请编写sum函数计算1 3 5 7 2 nj< int sum=sum(n); printf(" } void main() { int n=0;); scanf("n&quot#include<;sum=%d"%d"j++) {sum=sum+2j+1.h&gt, &n);; int sum(int n){ int sum=0:\输入n; printf(" for(...

excel中有哪些公式和函数语句公式的量是无限的。因为公式是使用函数通过不同的操作符(如加减乘除运算、逻辑运算等)连接的式子。根据不同的要求就会有不同的公式,所以公式是无限多样的。excel的函数也有不...

在c语言中语句和函数有什么区别函数函数头和函数体组成,通俗地讲函数头的格式为type 函数名(参数1,……) 注意括号中可以无参数,也可以有参数,函数名前的type为函数的返回类型,“)”后千万不能加“;”,因为它不是...

c语言函数的返回值是什么意思所谓函数返回值是一个函数在运算结束以后向调用它的母函数或者系统反馈一个值,这个值可以是各种变量类型. 举个简单的例子: int add(int a,int b) { return (a+b); } int main...