C语言| 递归实现斐波那契数列
C语言| 斐波那契数列_用if结构和for循环语句实现
C语言| 函数的递归调用
【输出“斐波那契数列”第n项的值。】
斐波那契数列又称黄金分割数列:0, 1, 1, 2, 3, 5, 8, 13,
21, 34, 55, 89, 144,233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368……
即这个数列从第三项开始,每一项都等于前两项之和。
【分析过程】
定义一个FBNQSL()函数,直接输出“斐波那契数列”第n项的值。
主函数,通过键盘输入任意值,调用FBNQSL()函数,得到第n项的结果。
[FBNQSL()函数]
1 使用if结构语句,把n的情况列清楚。
2 if条件有4个,n<0; n==0; n==1; n>1;
【程序代码】
#include <stdio.h>
long FBNQSL(int n); //函数声明
int main(void)
{
int n;
printf("请输入n的值:");
scanf("%d", &n);
printf("第n项的值为:%1d\n", FBNQSL(n));
return 0;
}
long FBNQSL(int n)
{
if(n<0)
{
return -1;
}
else if(n==0)
{
return 0;
}
else if(n==1)
{
return 1;
}
else
{
return FBNQSL(n-1)+FBNQSL(n-2);
}
}