C#~初学者递归小解

版权声明:盗版必究 https://blog.csdn.net/jinxiul5/article/details/81938593

什么是递归 :

递归是一种回溯思想,递归通过规律将复杂的问题简单化。在C#中递归就是在方法体中调用方法本身。

注意:

递归在使用的时候一定要添加出口,否则会一直进行递归,如同死循环,直到程序奔溃。

帮助理解 :

计算1+2+3+4+5+~~~+n;
一式 : 1+2+3+4+5+6=f(6);
二式: 1+2+3+4+5=f(5);
那么 f(6)=f(5)+6; f(n)=f(n-1)+n;
这样的话就把一个复杂的计算变的越来越简单!

代码实现

namespace ConsoleApp1
{
    //递归计算1累加到100

    public class Math
    {
       public int Sums(int n)
        {
            //在这个方法中n必须大于1,如果n等于1或者小于1的时候递归将会无限进行
            //出口,递归完成的条件
            if (n>1)
            {
                //该方法只要n>1就会一直回调,直到n<=1停止
                int sum = Sums (n - 1) + n;
                return sum;
            }
            else
            {
                return n = 1;
            }
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            Math m = new Math ( );

            Console.WriteLine (m.Sums (100));
            Console.ReadKey ( );
        }
    }
}

猜你喜欢

转载自blog.csdn.net/jinxiul5/article/details/81938593