用go语言写猜拳游戏程序 ,功能要求:1、要有一个游戏主界面 2、提示用户输入石头,剪刀,布三个选项之一3、用户输入与系统内置随机结果比较 4、输出比较的结果,谁赢谁输 5、统计用户赢的次数多还是机器赢的次数多
时间: 2024-02-13 16:07:28 浏览: 144
好的,我知道了你的问题。关于你的问题,我可以给你提供一些代码参考:
```go
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
var options = [3]string{"石头", "剪刀", "布"} // 定义三个选项
var userWin, computerWin int = 0, 0 // 用户和电脑的胜利次数
for {
// 游戏主界面
fmt.Println("请输入您的选择:1.石头 2.剪刀 3.布 4.结束游戏")
var userChoice int
fmt.Scanln(&userChoice)
if userChoice == 4 { // 用户选择结束游戏
fmt.Println("游戏结束")
break
} else if userChoice < 1 || userChoice > 3 { // 用户输入无效选项
fmt.Println("无效选项,请重新输入")
continue
}
// 电脑随机选项
rand.Seed(time.Now().UnixNano())
computerChoice := rand.Intn(3) + 1
// 输出比较结果
fmt.Printf("你选择了%s,电脑选择了%s,", options[userChoice-1], options[computerChoice-1])
if userChoice == computerChoice {
fmt.Println("平局")
} else if (userChoice == 1 && computerChoice == 2) || (userChoice == 2 && computerChoice == 3) || (userChoice == 3 && computerChoice == 1) {
fmt.Println("你赢了")
userWin++
} else {
fmt.Println("电脑赢了")
computerWin++
}
}
// 输出统计结果
fmt.Printf("游戏结束,你赢了%d局,电脑赢了%d局", userWin, computerWin)
}
```
这是一个简单的猜拳游戏程序,实现了你要求的所有功能。当用户选择结束游戏时,程序会输出用户和电脑的胜利次数比较结果。希望这个程序能够帮到你!
阅读全文