Shadow
go语言实现猜年龄游戏小程序
go语言猜年龄游戏小程序
//猜年龄游戏
package main
import (
"fmt"
"math/rand"
"time"
)
//初始化游戏的次数
var runNum int = 0
//最大游戏的次数
var maxNum = 5
func main() {
//采用时间纳米来生成随机数种子
rand.Seed(time.Now().UnixNano())
//生成0
//生成20-99的随机数,因为 rand.Intn这个函数只能生成0-N,所以我们把最大的数拆分开来相加,20是最小的年龄,20+80就是最大的生成范围
var randAge = rand.Intn(80)+20
//调用函数开始游戏
startGame(randAge)
}
//游戏逻辑
func startGame(randAge int) {
//初始化输入的变量
var inputNum int
//提示信息
fmt.Print("请输入您猜的年龄:")
//监听输入的内容
fmt.Scan(&inputNum)
//游戏次数+1
runNum += 1
//计算剩余游戏次数
lastNum := maxNum - runNum
//才对了直接退出
if inputNum == randAge {
fmt.Println("恭喜你,猜对了~")
return
}
//年龄不对大小的提示
if inputNum > randAge {
fmt.Printf("你猜大了~,请再猜一次,剩余:%d次\n", lastNum)
} else {
fmt.Printf("你猜小了~,请再猜一次,剩余:%d次\n", lastNum)
}
//游戏次数已经用完
if lastNum <= 0 {
fmt.Println("游戏机会已经用完咯~系统的年龄为:",randAge)
return
}
//继续游戏,这里是递归调用
startGame(randAge)
}
Dcr163的博客
http://dcr163.cn/564.html(转载时请注明本文出处及文章链接)