
很典型的递归应用题,直接上代码
#include <stdio.h>
#include <stdlib.h>int fb(int t)
{
int sum=0;
if(t==0)
{
return 0;
}
else if(t==1)
{
return 1;
}
else
{
sum+= fb(t-1)+fb(t-2);
}
return sum;
}int main()
{
int n,i;
int *t;
scanf("%d",&n);
t=malloc(sizeof(int)*n);
for(i=0;i<n;i++)
{
scanf("%d",&t[i]);
}
for(i=0;i<n;i++)
{
printf("%d",fb(t[i]));
if(n-i!=1)
{
printf("\n");
}
}
return 0;
}
这段代码使用C语言实现了一个递归函数`fb`来计算斐波那契数列,接受整数`t`作为参数,当`t`为0时返回0,为1时返回1,否则返回`t-1`和`t-2`的斐波那契数之和。在`main`函数中,程序读取用户输入的整数序列并打印对应位置的斐波那契数,使用`malloc`进行动态内存分配。

被折叠的 条评论
为什么被折叠?



