c#

c#怎么实现斐波那契数列

小亿
82
2024-10-27 00:03:32
栏目: 编程语言

在C#中,可以使用循环或递归的方法来实现斐波那契数列。以下是两种方法的示例:

方法1:循环

using System;

class Program
{
    static void Main()
    {
        int n = 10; // 输出前10个斐波那契数
        for (int i = 1; i <= n; i++)
        {
            Console.Write(Fibonacci(i) + " ");
        }
    }

    static int Fibonacci(int n)
    {
        if (n <= 1)
            return n;

        int a = 0, b = 1, result = 0;
        for (int i = 2; i <= n; i++)
        {
            result = a + b;
            a = b;
            b = result;
        }
        return result;
    }
}

方法2:递归

using System;

class Program
{
    static void Main()
    {
        int n = 10; // 输出前10个斐波那契数
        for (int i = 1; i <= n; i++)
        {
            Console.Write(Fibonacci(i) + " ");
        }
    }

    static int Fibonacci(int n)
    {
        if (n <= 1)
            return n;
        else
            return Fibonacci(n - 1) + Fibonacci(n - 2);
    }
}

注意:递归方法在计算较大的斐波那契数时可能会导致栈溢出错误。在实际应用中,通常会使用循环方法或动态规划来避免这个问题。

0
看了该问题的人还看了