#include <stdio.h>
long fib_recursion(long num) //使用递归方法实现
{
if(num == 1 || num == 2)
return 1;
else
return fib_recursion(num - 1) +fib_recursion(num -2);
}
long fib_non_recursion(long num) //非递归方法实现
{
int temp[2];
temp[0] = 1;
temp[1] = 1;
if(num == 1 || num == 2)
return 1;
else
{
int i = 0;
int tp = 0;
for(i = 2;i < num;i ++)
{
tp = temp[0] + temp[1];
temp[1] = temp[0];
temp[0] = tp;
}
return tp;
}
}
int main(void) //测试代码
{
printf("fib_recursion(5) =%ld.\n",fib_recursion(5) );
printf("fib_recursion(6) =%ld.\n",fib_recursion(6) );
printf("fib_non_recursion(5) =%ld.\n",fib_non_recursion(5) );
printf("fib_non_recursion(6) =%ld.\n",fib_non_recursion(6) );
return 0;
}
C语言实现一个FIBONACCI数发生器
最新推荐文章于 2022-04-19 21:00:11 发布
本文介绍两种实现斐波那契数列的方法:递归方法与非递归方法,并提供C语言代码示例进行对比。递归方法简洁但效率较低,而非递归方法虽然代码稍显复杂,但在计算较大数值时更为高效。
部署运行你感兴趣的模型镜像
您可能感兴趣的与本文相关的镜像
Python3.10
Conda
Python
Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本
1418

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



