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 }