计算数组{1,1,2,3,5,8.......} 第30位值
首先看一下这组数的规律
第一位 1
第二位 1
第三位=第一位加第二位 2
第四位=第二位加第三位 3
第五位=第三位加第四位 5
第六位=第四位加第五位 8
依次类推。。。。
先看一下不用递归的写法
public static Main(string[] args)
{
int num=new int[30];
num[0]=1;
num[1]=1;
int first=num[0];
int second=num[1];
for(int i=2;i<num.length;i++)
{
num[i]=first+second;
first=second;
second=num[i];
}
Console.WriteLine(num[29]);
Console.ReadKey();
}
下面是递归的写法
class Program
{
static void Main(string[] args)
{
Console.WriteLine(Foot(3));
Console.ReadKey();
}
public static int Foot(int i)
{
if (i <= 0)
{
Console.WriteLine("abc");
return 0;
}
else if (i > 0 && i <= 2)
{
Console.WriteLine("abc");
return 1;
}
else
{
Console.WriteLine("abc");
return Foot(i - 1) + Foot(i - 2);
}
}
}