在C#语言中,除了Main方法以外的所有方法都允许调用其他方法或被其他方法调用,也可以调用本身。方法的递归调用即方法调用自身。
下面是递归调用实现昂纳多.斐波那契通过兔子的繁殖来引入这样一个数列:1,1,2,3,5,8,13。。。。。。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication17
{
class Program
{
static void Main(string[] args)//主方法程序入口
{
Console.WriteLine("请输入数列长度:");//提示用户输入数列长度
long n = long.Parse(Console.ReadLine());//输入数列长度
Console.WriteLine(fibonacci(n));//调用下面写好的方法
Console.ReadKey();//等待用户输入
}
static long fibonacci(long n)//求递归的方法
{
if (n == 1 || n == 2)//判断数值
return 1;//当n=0或者1时,值为1
else
{
return fibonacci(n - 1) + fibonacci(n - 2);//调用该方法本身,实现递归调用
}
}
}
}
就这么简单!
|