C#基础_递归方法几个示例(十四)

递归:就是自己调用自己本身。

 1  ///求:求一个数的阶乘
 2         static int  Factor(int num)
 3         {
 4             if (num==1)  //判断什么时候开始返回
 5             {
 6                 return num;
 7             }
 8             else
 9             {
10                 return num * Factor(--num); //递归的规律
11             }
12         }
 1  //求两个数之间所有整数的乘积(包含边界)
 2         static int GetResult(int num1, int num2)
 3         {
 4             //首先判断num1 和num2 哪个数据大
 5             if (num1 > num2)
 6             {
 7                 int temp = num1;
 8                 num1 = num2;
 9                 num2 = temp;
10             }
11             if (num2 ==num1) //判断在什么情况下不再递归调用
12             {
13                 return num2;
14             }
15             else
16             {
17                 return num2 * GetResult(num1,--num2);
18             }
19         }
 1         //计算数组{1,1,2,3,5,8.......} 获取数组索引第 x 位置的数字 
 2         static int GetIndexOf(int index)
 3         {
 4 
 5             if (index==0||index ==1)
 6             {
 7                 return 1;
 8             }
 9             else
10             {
11                 return GetIndexOf(index - 1) + GetIndexOf(index - 2);
12             }
13         }
原文地址:https://www.cnblogs.com/CeasarH/p/9166266.html