/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称: 《求逻辑数字——C#第一周》
* 作 者: 刘江波
* 完成日期: 2012 年 9 月 11 日
* 版 本 号: v2。0
* 对任务及求解方法的描述部分
* 问题描述:
.一列数的规则如下:1、1、2、3、5、8、13、21、34......。求第30位数是多少?
* 程序头部的注释结束
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace get_num
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("这是一个“一列数规则如下:1,1,2,3,5,8,13,21,34...”的程序");
Console.WriteLine("你想求第几位数?");
int number = int.Parse(Console.ReadLine());
int m = f(number);//调用递归函数
Console.WriteLine("第{0}位数为:{1}", number, m);
Console.ReadKey();
}
static int f(int number)
{
int fact;
if (number == 0 || number == 1)
{
if (number == 0)
{
Console.WriteLine("不存在第0个数!");
return 0;
}
else
{
return 1;
}
}
else
{
fact = f(number - 1) + f(number - 2);
return fact;
}
}
}
}