21xrx.com
2025-06-19 18:59:52 Thursday
登录
文章检索 我的文章 写文章
C++实现斐波那契数列前20项
2023-07-03 03:31:28 深夜i     34     0
C++ 实现 斐波那契数列 前20项

斐波那契数列是指这样一个数列:0、1、1、2、3、5、8、13、21、34、55、89、144、233、377、610、987、1597、2584、4181……,即第i个数等于第(i-1)个数和第(i-2)个数的和。

在C++语言中实现斐波那契数列前20项很容易,我们可以使用循环或者递归的方式来实现。

首先,我们来看循环方式的实现代码:

#include <iostream>
using namespace std;
int main()
{
  int a = 0, b = 1, c = 0;
  cout << a << " " << b << " ";
  for(int i = 3; i <= 20; i++)
  {
    c = a + b;
    cout << c << " ";
    a = b;
    b = c;
  }
  return 0;
}

这段代码使用了三个变量a、b、c,其中a、b分别初始化为0、1,表示斐波那契数列的第一项和第二项。变量c用于存储当前项的值。在for循环中,从第3项开始,每次将a和b的和赋给c,然后输出c的值,并将b的值赋给a,c的值赋给b,接着进行下一次循环,直到输出第20项数列值。

接下来我们看递归方式的实现代码:

#include <iostream>
using namespace std;
int fib(int n)
{
  if(n == 0 || n == 1)
    return n;
  else
    return fib(n-1) + fib(n-2);
}
int main()
{
  for(int i = 0; i < 20; i++)
  {
    cout << fib(i) << " ";
  }
  return 0;
}

这段代码使用了一个函数fib来计算斐波那契数列的值。在递归函数中,当n等于0或1时,返回n的值;否则,返回前两项的和。在主函数中,使用for循环从第0项开始,依次输出斐波那契数列前20项的值。

斐波那契数列虽然看起来简单,但却是计算机科学中非常重要的概念。它在许多领域中都有广泛的应用,如计算机网络、密码学、人工智能等等。在不同的领域中,其应用会有不同的形式,但其核心思想都是基于斐波那契数列的特性实现的。因此,掌握斐波那契数列的概念和应用是非常重要的。

  
  

评论区