猜数字游戏
- 生成随机整数[0, 100)
- 提示用户再控制台输入猜测的数字
- 比较,当用户输入较大,提示太大了
- 当用户输入太小,提示太小了
- 当用户输入正确,提示经过N次对了,太聪明了
- 用户最多猜5次,如果5次内都没有猜正确,提示太笨了,游戏结束
- 当成功或失败后,提示用户是否继续,输入:yes, y, Y则继续,重新生成随机数,让用户猜测
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
for {
var num int
rand.Seed(time.Now().Unix())
randNum := rand.Int() % 100
fmt.Println(randNum)
var isOK bool
for i := 1; i <= 5; i++ {
fmt.Print("请输入你猜的数字:")
fmt.Scan(&num)
if randNum > num {
fmt.Printf("你猜的数字太小,你还有%d次机会,请重新输入:
", 5-i)
} else if randNum < num {
fmt.Printf("你猜的数字太大,你还有%d次机会,请重新输入:
", 5-i)
} else {
fmt.Println("你猜的数字完全正确!")
isOK = true
break
}
}
if isOK != true {
fmt.Println("5次机会用完,退出")
}
var txt string
fmt.Print("请问是否继续猜数字:(y/n)")
fmt.Scan(&txt)
if txt != "y" {
fmt.Println("退出")
break
}
}
}