csDP写法
using System;
class Program
{static void Main(string[] args){Console.WriteLine("请输入一个非负整数:");while(true){string input = Console.ReadLine();int n = Convert.ToInt32(input);if (n < 0){Console.WriteLine("输入必须是非负整数。");return;}int result = Fibonacci(n);Console.WriteLine($"Fibonacci({n}) = {result}");}}static int Fibonacci(int n){int[] a = new int[n];a[0] = a[1] = 1;for (int i = 2;i < n;i++){a[i] = a[i - 1] + a[i - 2];}return a[n-1];}}
cs递归写法
using System;
class Program
{static void Main(string[] args){Console.WriteLine("请输入一个非负整数:");string input = Console.ReadLine();int n = Convert.ToInt32(input);if (n < 0){Console.WriteLine("输入必须是非负整数。");return;}int result = Fibonacci(n);Console.WriteLine($"Fibonacci({n}) = {result}");}static int Fibonacci(int n){if (n <= 2){return 1;}return Fibonacci(n-1) +Fibonacci(n-2);}
}
cs迭代法
using System;class Program{static void Main(string[] args){Console.WriteLine("请输入一个非负整数:");while(true){string input = Console.ReadLine();int n = Convert.ToInt32(input);if (n <= 0){Console.WriteLine("输入必须是非负整数。");return;}int result = Fibonacci(n);Console.WriteLine($"Fibonacci({n}) = {result}");}}static int Fibonacci(int n){int a = 1;int b = 1;int c;for(int i = 2;i < n;i++){c = a + b;a = b;b = c;}return b;}}
运行:控制它输入dotnet run;