递归:实现阶乘运算

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sakenc/article/details/87900558
class UsingRecursive
{
    //递归就是自己反复利用自己的过程,递归的方法中必有一个结束条件(最底层条件),然后一级一级往上返回值。
    static void Main()
    {
        int intResult;

        UsingRecursive myURec = new UsingRecursive();//创建自己的类对象,调用自己里面的方法。
        intResult = myURec.DoFactorial(6);//调用递归的方法,
        Console.WriteLine("数值6 的阶乘等于{0} (递归)", intResult);//输出显示结果
        Console.ReadLine();
    }
    //数值6 的阶乘等于{0} (递归)
    int DoFactorial(int PF)//(PF=6)
    {
        Console.WriteLine("阶乘:" + PF);//显示“当前”/这次运行的方法的pF参数的值
        if (PF == 1)//如果这次pf参数的值等于1
        {
            Console.WriteLine("此次result变量的值为:" + 1);
            return 1;//此次运行的值等于1,上层的运算就会等于1X2=2.
        }
        int result = DoFactorial(PF - 1) * PF;

        Console.WriteLine("数值:" + PF);//和上面是一模一样的代码   //务必将这行代码取消注释,运行看结果
        Console.WriteLine("阶乘等于" + result);//返回此次运行根据当前的参数值的结果的值
        return result;
    }
}

猜你喜欢

转载自blog.csdn.net/sakenc/article/details/87900558
今日推荐