go语言基础之递归实现数字累加
1、实现1+100 = 5050
示例:
package main
import "fmt"
//实现1+2+3+……100
func test01() (sum int) {
for i := 1; i <= 100; i++ {
sum += i
}
return
}
func main() {
var sum int
sum = test01()
fmt.Println("sum = ", sum)
}
执行结果:
sum = 5050
2、递归实现1+2+3+……100
示例:
package main
import "fmt"
//实现1+2+3+……100
func test02(i int) int {
if i == 1 {
return 1
}
return i + test02(i-1)
}
func main() {
var sum int
sum = test02(100)
fmt.Println("sum = ", sum)
}
执行结果:
sum = 5050
分析流程:

3、递归实现1+2+3+……100
示例:
package main
import "fmt"
//实现1+2+3+……100
func test03(i int) int {
if i == 100 {
return 100
}
return i + test03(i+1)
}
func main() {
var sum int
sum = test03(1)
fmt.Println("sum = ", sum)
}
执行结果:
sum = 5050

浙公网安备 33010602011771号