版权声明:转载请注明来源~ https://blog.csdn.net/Lth_1571138383/article/details/80536290
/*
本程序应 习题-11 建立。
题目要求: 编写并测试 Fibonacci() 函数, 该函数用循环代替递归计算斐波那契数。
*/
#include<stdio.h>
#define true 1
void Fibonacci(void);
int main(void)
{
// 懒得写太多了。直接在子函数用循环代替递归,来写 斐波那契数。
Fibonacci();
getchar();
printf("Bye !\n");
return 0;
}
void Fibonacci(void)
{
// 斐波那契数列以如下被以递归的方法定义:
// F(0) = 0,F(1) = 1, F(n) = F(n - 1) + F(n - 2)(n >= 2,n∈N*)
// !! 注 : n 为第 n 项, n - 1 为上一项。
int i = 0; // 循环用。
int F[50] = { 0 }; // 存斐波那契数列储
for ( i = 0; i < 30; i++)
{
if (i == 0)
{
F[0] = 0;
printf("第%d次 %d ",i,F[i]);
}
else if (i == 1)
{
F[1] = 1;
printf("第%d次 %d ", i,F[i]);
}
else
{
F[i] = F[i - 1] + F[i - 2];
printf("第%d次 %d ", i,F[i]);
}
}
// 之所以用 return; 是因为 void 类函数每次return 0 都警告默认 int 型返回值。
return;
}
本程序应 习题-11 建立。
题目要求: 编写并测试 Fibonacci() 函数, 该函数用循环代替递归计算斐波那契数。
*/
#include<stdio.h>
#define true 1
void Fibonacci(void);
int main(void)
{
// 懒得写太多了。直接在子函数用循环代替递归,来写 斐波那契数。
Fibonacci();
getchar();
printf("Bye !\n");
return 0;
}
void Fibonacci(void)
{
// 斐波那契数列以如下被以递归的方法定义:
// F(0) = 0,F(1) = 1, F(n) = F(n - 1) + F(n - 2)(n >= 2,n∈N*)
// !! 注 : n 为第 n 项, n - 1 为上一项。
int i = 0; // 循环用。
int F[50] = { 0 }; // 存斐波那契数列储
for ( i = 0; i < 30; i++)
{
if (i == 0)
{
F[0] = 0;
printf("第%d次 %d ",i,F[i]);
}
else if (i == 1)
{
F[1] = 1;
printf("第%d次 %d ", i,F[i]);
}
else
{
F[i] = F[i - 1] + F[i - 2];
printf("第%d次 %d ", i,F[i]);
}
}
// 之所以用 return; 是因为 void 类函数每次return 0 都警告默认 int 型返回值。
return;
}