输出斐波那契数列 1、1、2、3、5、8 ……求第20个数的值

第一种方法:


image.png

image.png
int a = 1, b = 1;
            for (int i = 3; i <= 20; i++)
            {
                b = b + a;
                a = b - a;
            }
            Console.WriteLine("第20个数的值是" + b);

第二种方法:


image.png
 int a = 1, b = 1;
            for (int i = 3; i <= 20; i++)
            {
                int temp = a + b;//第三个数等于前两个数相加
                a = b;//第二个数的值给第一个数
                b = temp;//第三个数的值给第二个数
            }
            Console.WriteLine(b);

第三种方法(一位数组):


image.png

image.png
 int[] a = new int[20];
            a[0] = 1;
            a[1] = 1;
            for (int i = 2; i < a.Length; i++)
            {
                a[i] = a[i - 1] + a[i - 2];
            }
            foreach (var item in a)
            {
                Console.WriteLine(item);
            }

你可能感兴趣的:(输出斐波那契数列 1、1、2、3、5、8 ……求第20个数的值)