/******************************************
斐波那契递归算法,输入一个值,输出其前面的
斐波那契数
******************************************/
#include <stdio.h>
int rec(int n);
int main(int argc, char const *argv[])
{
int num,i=0;
int temp=0;
printf("请输入一个数\n");
scanf("%d",&num);
printf("\n");
while(temp <num)//判断循环次数
{
i++;
temp=rec(i);//获取斐波那契数
printf("%d\n",temp);
}
return 0;
}
int rec(int n)
{
if (n==1 || n==2)//1,2进行特殊处理
{
return 1;
}
else
{
return rec(n-2)+rec(n-1);//递归,进入最底层,逐次打印
}
}