C语言if语句编写程序,实验一个猜拳石头剪刀布的游戏。要求:玩家输入石头、剪刀、布(分别用1、2、3来代替输入)的其中之一,电脑随机产生石头、剪刀、布,根据结果判断玩家是 “输”“赢”“平局”。 其中电脑不能一直只出石头、剪刀或布中的某一个。
时间: 2024-10-11 14:08:23 浏览: 40
在C语言中,你可以通过以下步骤编写一个猜拳游戏的if语句。首先,你需要从用户那里获取输入,然后用随机数生成器模拟电脑的选择,最后根据规则判断胜负。这是一个简单的示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h> // 引入时间库用于随机数生成
// 定义石头、剪刀、布对应的数字
#define STONE 1
#define SCISSORS 2
#define PAPER 3
int getRandomChoice() {
srand(time(NULL)); // 初始化随机种子
return rand() % 3 + 1; // 0到2之间的随机数加上1,得到1~3
}
int main() {
int userChoice;
printf("请输入你的选择 (1 - 石头, 2 - 剪刀, 3 - 布): ");
scanf("%d", &userChoice);
// 电脑随机选择
int computerChoice = getRandomChoice();
// 判断胜负并打印结果
if (userChoice == computerChoice) {
printf("平局!\n");
} else if ((userChoice == STONE && computerChoice == SCISSORS) ||
(userChoice == SCISSORS && computerChoice == PAPER) ||
(userChoice == PAPER && computerChoice == STONE)) {
printf("你赢了!\n");
} else {
printf("你输了!\n");
}
return 0;
}
```
在这个程序中,我们用`getRandomChoice()`函数生成电脑的随机选择,然后使用if-else结构来比较用户和电脑的选择。如果两者相同,则为平局;根据剪刀胜纸、纸胜布、布胜剪刀的规则判断输赢。
阅读全文