#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
//递归斐波那契函数
int fib(int n) {
if (n <= 2) {
return 1;
}
return fib(n - 1) + fib(n - 2);
}
//for循环斐波那契函数
int Fib(int n) {
if (n <= 2) {
return 1;
}
int last2 = 1;
int last1 = 1;
int cur = 0; //第i项结果
for (int i = 3; i <= n; ++i) {
cur = last1 + last2;
last2 = last1;
last1 = cur;
}
return cur;
}
int main() {
int n;
printf("请输入第n项:\n");
scanf("%d", &n);
system("cls");
printf("递归斐波那契的结果:%d\n", fib(n));
printf("for循环斐波那契的结果:%d\n", Fib(n));
system("pause");
return 0;
}
斐波那契函数的递归与非递归(C语言)
最新推荐文章于 2023-10-31 11:28:12 发布