递归指函数可以直接或间接的调用自身。

递归函数通常有相同的结构:一个跳出条件和一个递归体。所谓跳出条件就是根据传入的参数判断是否需要停止递归,而递归体则是函数自身所做的一些处理。

  1. //通过循环实现1+2+3……+100
  2. func Test01() int {
  3. i := 1
  4. sum := 0
  5. for i = 1; i <= 100; i++ {
  6. sum += i
  7. }
  8. return sum
  9. }
  10. //通过递归实现1+2+3……+100
  11. func Test02(num int) int {
  12. if num == 1 {
  13. return 1
  14. }
  15. return num + Test02(num-1) //函数调用本身
  16. }
  17. //通过递归实现1+2+3……+100
  18. func Test03(num int) int {
  19. if num == 100 {
  20. return 100
  21. }
  22. return num + Test03(num+1) //函数调用本身
  23. }
  24. func main() {
  25. fmt.Println(Test01()) //5050
  26. fmt.Println(Test02(100)) //5050
  27. fmt.Println(Test03(1)) //5050
  28. }
作者:admin  创建时间:2018-06-17 19:57
 更新时间:2018-06-17 19:58
上一篇:
下一篇: