代码
#include <stdio.h>
void fb_arr(int n)
{
int arr[100];
int i;
arr[1]=1,arr[2]=1;
for(i=3;i<=n;i++)
{
arr[i]=arr[i-1]+arr[i-2];
}
printf("%d ",arr[n]);
printf("\n");
}
int fb_dg(int n)
{
if(n==1 || n==2)
{
return 1;
}
return fb_dg(n-1)+fb_dg(n-2);
}
int main(int argc, const char *argv[])
{
int res=fb_dg(20);
printf("%d\n",res);
fb_arr(20);
return 0;
}
运行结果
ubuntu@ubuntu:jiaqi$ gcc t2.c
ubuntu@ubuntu:jiaqi$ ./a.out
6765
6765
本文详细介绍了如何使用C语言编写代码,分别通过递归和动态规划方法计算斐波那契数列的第20项,展示了递归函数fb_dg和循环函数fb_arr的实现及其运行结果。
5407

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



