Fibonacci数列
小弟求救,请诸大虾写出它的算法或是程序,敬礼!
编程输出Fibonacci数列的前40项,每行输出4项。Fibonacci数列的第一个数和第二个数为1,从第三个数开始,每个数是前两个数之和。
方法一:
main()
{long d1=1,d2=1,d3;int i;
for(i=1;i<=40;i++)
{ if(i<=2) {printf("%15d",1);continue;}
d3=d2+d1;
printf("%15d",d3);
if(i%4==0) printf("\n");
d1=d2;
d2=d3;
}
}
方法二:
long fun(int x)
{if(x==1||x==2) return 1;
return fun(x-1)+fun(x-2);
}
main()
{int i;
for(i=1;i<=40;i++)
{printf("%15d",fun(i));if(i%4==0) printf("\n");}
}