c语言猜拳游戏代码 三局两胜和五局三胜模式可选
时间: 2024-12-30 17:39:57 浏览: 21
在C语言中编写一个猜拳游戏(石头、剪刀、布),通常涉及到用户输入、随机生成电脑的选择以及判断胜负规则。这里是一个简单的示例,实现了三局两胜的模式:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
// 定义石头、剪刀、布的常量
enum {ROCK = 0, SCISSORS = 1, PAPER = 2};
int get_user_choice() {
int choice;
printf("请输入你的选择(0-石头,1-剪刀,2-布): ");
scanf("%d", &choice);
return choice;
}
int get_computer_choice() {
srand(time(0)); // 设置随机种子
return rand() % 3; // 0到2之间随机选择
}
void play_round(int user, int computer) {
if (user == computer) {
printf("平局!\n");
} else if ((user == ROCK && computer == SCISSORS) ||
(user == SCISSORS && computer == PAPER) ||
(user == PAPER && computer == ROCK)) {
printf("你赢了!\n");
} else {
printf("电脑赢了! (%d vs %d)\n", computer + 1, user + 1);
}
}
int main() {
int user_wins = 0, computer_wins = 0;
while (user_wins < 2 && computer_wins < 2) {
int user = get_user_choice();
int computer = get_computer_choice();
play_round(user, computer);
if (user == computer) {
printf("加赛一轮...\n");
} else if (user_wins++ == 2) {
printf("恭喜你,三局两胜制下你赢得了比赛!\n");
break;
} else if (computer_wins++ == 2) {
printf("很遗憾,你输了比赛。\n");
break;
}
}
return 0;
}
如果你想增加五局三胜模式,只需将胜利条件由user_wins < 2
和computer_wins < 2
改为user_wins < 3
和computer_wins < 3
,并在超过这个限制后结束循环。注意,这个例子假设玩家和电脑都遵守游戏规则。
阅读全文
相关推荐

















