求C语言牛人帮小弟我编两个程序

来源:百度知道 编辑:UC知道 时间:2024/05/18 15:48:56
分别用递归和非递归编写程序输出斐波那契数列前40项?务必在5.31号之前给答复,小弟定将感激涕零!
还有加上注释

递归的代码
#include <stdio.h>

int F(int x)
{
if (x <= 1)
return 1;
else
return F(x - 1) + F(x - 2); // 递推公式
}

int main()
{
int v[40];
int i;

for (i = 0; i < 40; i++) {
printf("%d ", F(i));
}
}

非递归的
#include <stdio.h>

int main()
{
int a, b, c;
int i;

a = 1; b = 1;
printf("%d %d ", a, b);
for (i = 2; i < 40; i++) {
c = a + b; // 第i项
a = b;
b = c;
printf("%d ", c);
}
}

我只会帕斯卡语言不会c语言

提示下:用递归当检测数字大的时候会很慢的