输入整数N,打印Fibonacci数列打印前N项
测试输入7
预期1 1 2 3 5 8 13 21
输入整数N,打印Fibonacci数列打印前N项
使用分支条件一一判断当第几项该返回什么值即可实现递归求斐波那契数列某一项的值,依据你给的代码及例子,修改如下:
参考链接:
斐波那契数列_百度百科
#include <stdio.h>
int F(int n);
int main(void){
int n,y,i;
scanf("%d",&n);
//printf("n=%d\n",n);
for(i=0;i<=n;i++){ //从数列的第1项开始,到输入的第n项结束
y=F(i);
printf("%d ",y);
}
printf("\n");
return 0;
}
//https://baike.baidu.com/item/%E6%96%90%E6%B3%A2%E9%82%A3%E5%A5%91%E6%95%B0%E5%88%97/99145
int F(int n){
// printf("n=%d\n",n);
if(n==0){ //如果是数列的第一项,则返回1
return 1;
}else if(n==1){ //如果是数列的第二项,则返回1
return 1;
}else{ //如果是数列的其他项,则返回前面两项数列的和
return F(n-1)+F(n-2);
}
}