例7.7 递归
作者:互联网
//递归:递去,归来;
//一直往前走,打开门,打开门,走到最后退的时候,再倒着关回来。
//找到限制条件,出口
//一般将问题划为两部分;
//7.7 求n!
// 1*2*3*4*5*(n-1)*n
// 1到n-1 n
// 0的阶乘为1 出口
//先输入n的值,调用函数
#include<stdio.h>
int mult(int n)
{
if (n == 0 || n == 1)
return 1;
else
return mult(n - 1)*n;//阶乘 返回值乘以n
}
int main()
{
int n = 4;
printf("%d",mult(n));
}
// 佩波纳奇数列的递归
//1,1,2,3,5,8,13
//f(1) = 1; f(2) = 1; 出口
//从3起,f(n) = f(n - 2) + f(n - 1);
#include<stdio.h>
int f(int n)
{
if (n == 1 || n == 2)
return 1;
else
return f(n - 2) + f(n - 1);
}
int main()
{
int n = 7;
printf("%d", f(n));
return 0;
}
//1+2+3+4+...+n
//1+2+..+(n-1)
//n
#include<stdio.h>
int f(n)
{
if (n == 1)
return 1;
else
return f(n - 1) + n;
}
int main()
{
int n = 4;
printf("%d", f(n));
return 0;
}
标签:return,递归,int,else,7.7,printf,include,mult 来源: https://blog.csdn.net/zyyy456123/article/details/120801995