打印Fibonacci数列
2016-10-19 本文已影响7人
PZcoder
Fibonacci菲波那切数列为 1,1,2,3,5,8,13,21…,请找出规律并打印出该数列的前40个数.每打印5个数换行
函数方法:
int fibonacci(int x)
{
int cur = 0;
if (x == 1)
{
cur = 0;
}
else if(x == 2)
{
cur = 1;
}
else
{
cur = fibonacci(x - 1)+fibonacci(x - 2);
}
return cur;
}
循环方法1
int before = 0;
int cur = 1;
for (int i = 0; i < 40; i ++)
{
printf("%d ",before);
int temp = cur;
cur += before;
before = temp;
if ((i + 1) % 5 == 0)
{
printf("\n");
}
}
循环方法2
int before = 0;
int temp = 0;
int current = 1;
for (int i = 1; i <= 40; i ++)
{
printf("%d ",before);
current +=before;
temp = before;
before = current;
current = temp;
if (i % 5 == 0)
{
printf("\n");
}
}