函数递归
函数需要被另一个函数调用才能执行,而主函数main在程序运行时会被自动调用。其实函数也可以自己调用自己
#include<stdio.h>
void func(int n)
{if(n==5)//n为5时,结束递推
return;
printf("%d\n",n);
func(n+1);}//再将n值传回func,然后继续打印
int main()
{func(0);//被主函数调用,并且n为0,进入func函数
return 0;}
蓝色线条画出了从下级回归的流程。箭头方向和标号数字代表执行顺序。流程在n小于5之前,一直递推至下级函数。当n为5时,从下级函数开始回归。
例题:用递归计算阶乘n!
#include<stdio.h>
int f(int n)
{if(n==0||n==1)
{return 1;}
return n*f(n-1);}
int main()
{int result=f(4);
printf("%d\n",result);
return 0;
递推流程中,可以确定当前的n分别为4,3,2,1。接着进入了递归调用f(n-1),直到n为1时,开始回归。
回归到n为2时,计算2 * 1。回归到n为3时,计算3 * (2 * 1)。回归到n为4时,计算4 * (3 * 2 * 1)
标签:11,return,函数,递归,int,回归,C语言,func From: https://www.cnblogs.com/mmwl/p/16707430.html