第二十二节 函数的递归
递归函数:函数反复调用本身的行为。例如n!=1*2*3*....*n;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace DiGui
{
class Program
{
static double Fac(double n)
{
if (n <= 1)
return 1;
else
return n * Fac(n - 1);
}
static void Main(string[] args)
{
double a = Convert.ToDouble(Console.ReadLine());
double result = Fac(a);
Console.WriteLine("{0}的阶乘为{1}",a,result);
}
}
}
递推公式两个要素:递推关系和初始值。
求斐波那契数列递归公式。 递推关系Fibo(n-1)+Fibo(n-2);初始值 第一项,第二项都为1.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Fibonacci
{
class Program
{
static int Fibo(int n)
{
if (n == 1 || n == 2)
return 1;
else
return Fibo(n - 1) + Fibo(n-2);
}
static void Main(string[] args)
{
int a = Convert.ToInt32(Console.ReadLine());
Console.Write("Fibocci");
for (int i = 1; i < a; i++)
{
Console.Write("\t{0}",Fibo(i));
if (i % 5 == 0)
Console.WriteLine();
}
}
}
}
浙公网安备 33010602011771号