当编写一个猜谜游戏程序时,需要考虑以下几个步骤:
- 生成随机数字: 使用随机数生成器生成一个在指定范围内的随机数字,这个数字就是玩家需要猜测的答案。
- 获取玩家输入: 使用适当的输入方法(如
fmt.Scan)获取玩家猜测的数字。 - 比较猜测和答案: 将玩家的猜测与生成的随机数字进行比较,判断猜测是太小还是太大,还是正确。
- 根据猜测给出提示: 根据比较的结果,向玩家提供相应的提示,告诉他们猜的数字是太小还是太大,或者是否猜对了。
- 循环猜测直到猜对: 使用循环结构,使程序可以多次提示玩家猜测,并根据玩家的每次猜测给出反馈,直到玩家猜对为止。
- 计算猜测次数: 在猜中答案后,告诉玩家他们猜对了,并显示他们猜测的次数。
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
// 设置随机种子
rand.Seed(time.Now().UnixNano())
// 生成一个 1 到 100 之间的随机数字
secretNumber := rand.Intn(100) + 1
attempts := 0
var guess int
fmt.Println("欢迎来到猜谜游戏!")
fmt.Println("我已经选择了一个 1 到 100 之间的数字。")
for {
fmt.Print("请输入你的猜测: ")
fmt.Scan(&guess)
attempts++
if guess < secretNumber {
fmt.Println("太小了,请再试一次。")
} else if guess > secretNumber {
fmt.Println("太大了,请再试一次。")
} else {
fmt.Printf("恭喜你猜对了!你用了 %d 次猜测。\n", attempts)
break
}
}
}