首页 > 代码库 > Go by Example: Recursion

Go by Example: Recursion

Go语言支持递归函数。这里是一个经典例子:factorial 数列。

package main

import "fmt"

// fact函数不断地调用自身,直到达到基本状态fact(0)
func fact(n int) int {
    if n == 0 {
        return 1
    }
    return n * fact(n-1)
}

func main() {
    fmt.Println(fact(7))
}
输出

<span style="font-size:18px;"><strong>$ go run recursion.go </strong>
5040</span>

下一个例子: Go by Example:Pointer

英文原文

Go by Example: Recursion