有关C语言,用FOR循环来打印出斐波那契数列的前N项。

RT,我不要用函数,一定要用循环来编程哦,谢谢了。(另外应考虑足够大项的数据表示要求)
貌似都不怎么符合啊,求达人。谢谢啊

// 斐波那契数列指的是这样一个数列:1、1、2、3、5、8、13、21、……
// 这个数列从第三项开始,每一项都等于前两项之和。

#include <stdio.h>
void main()
{
int a = 1;
printf("%d ", a);
int b = 1;
printf("%d ", b);
int i, temp;
int N = 100; // 需要输出的个数,N>=3
for(i =3; i <= N; i++)
{
temp = b;
b += a;
a = temp;
printf("%d ", b);
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-11-17
#include <math.h>
int main()
{

int m, x, a, b, c;
a = 1;
b = 1;
c = 2;
x = 1;

printf("m = ");

scanf("%d",&m);
getchar();

for(;x<=m;x++)
{
printf("%d ",a);
a = b;
b = c;
c = a+b;
x++;

}
getchar();
return 0;
}
我们也做这个的,m的意思是想要几个数字出现在屏幕上数字,就输入m = 几就可以了,希望可以帮到你
第2个回答  2010-11-15
#include <stdio.h>
int main()
{
long fib[41] = {0,1};
int i;
for(i=2;i<41;i++)fib[i] = fib[i-1]+fib[i-2];
for(i=1;i<41;i++)printf(本回答被网友采纳
第3个回答  2010-11-15
double a1=1;
double a2=2;
double a3 =0;
int N =10;
for(int i =1;i<N;i++)
{
a3= a1+a2;

cout <<a3<<endl;
a1= a2;
a2= a3;
}
相似回答