今天老师教了我们关于递归的知识,递归其实就是函数调用它自己的过程,我感觉他有时候让人觉得很高级,但有时候又看不懂,这就很烦。结束递归是使用递归的难点,因为如果递归代码中没有终止递归的条件测试部分,一个调用调用自己的函数会无限递归。
使用循环的地方通常可以使用递归,有时递归方法更简洁,但是效率却没有循环好。递归函数必须包含能让递归停止的语句,通常递归函数都使用if或其他等价的测试条件在函数形式等于某特定值时终止递归。
这里有一种最简单的递归形式就是把递归调用置于函数的末尾,即正好在return语句之前。这种叫做尾递归,因为递归调用在函数的末尾,他其实就相当于循环。之后老师跟我们介绍了了变量的存储类型,分别为自动变量,寄存器变量和静态变量。不在如何语句块内定义的变量在程序中的所有位置都有效,这叫全局变量。