7. 函数递归
7.1 什么是递归?
程序调用自身的编程技巧称为递归( recursion )。
递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接
调用自身的
一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,
递归策略
只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。
递归的主要思考方式在于:把大事化小
7.2 递归的两个必要条件
- 存在限制条件,当满足这个限制条件的时候,递归便不再继续。
- 每次递归调用之后越来越接近这个限制条件。
7.2.1 练习1:
接受一个整型值(无符号),按照顺序打印它的每一位。
例如:
输入: 1234 ,输出 1 2 3 4
绿色的箭头回去的时候(归)就依次打印1 2 3
//这个线看起来有点懵但是仔细理解其实也不难,就是一直调用自己同时判断,然后一个一个出函数。
7.2.2 练习2:
编写函数不允许创建临时变量,求字符串的长度。