#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main() {
int game;
int s, j, b, a, c, d;
s = 0;
j = 1;
b = 2;
a = 0;
c = 0;
d = 0;
srand(time(0));
printf("===========欢迎进入 石头 剪刀 布 游戏===========\n");
for (int i = 1; i <= 5; i++) {
printf("第%d局你想出什么(石头s 剪刀j 布 b)?", i);
scanf("%d", &game);
if (rand() % 3 == 0 && game == s) {
printf("你出的是 石头 ,电脑出的是 石头 ,平局!\n");
d = d + 1;
} else if (rand() % 3 == 0 && game == j) {
printf("你出的是 石头 ,电脑出的是 剪刀,你赢了!\n");
a = a + 1;
} else if (rand() % 3 == 0 && game == b) {
printf("你出的是 石头 ,电脑出的是 布,电脑赢了!\n");
c = c + 1;
} else if (rand() % 3 == 1 && game == s) {
printf("你出的是 剪刀 ,电脑出的是 石头 ,你输了!\n");
a = a + 1;
} else if (rand() % 3 == 1 && game == j) {
printf("你出的是 剪刀 ,电脑出的是 剪刀,平局!\n");
d = d + 1;
} else if (rand() % 3 == 1 && game == b) {
printf("你出的是 剪刀 ,电脑出的是 布,你赢了!\n");
a = a + 1;
} else if (rand() % 3 == 2 && game == s) {
printf("你出的是 布 ,电脑出的是 石头 ,你赢了!\n");
a = a + 1;
} else if (rand() % 3 == 2 && game == j) {
printf("你出的是 布 ,电脑出的是 剪刀,你输了!\n");
c = c + 1;
} else if (rand() % 3 == 2 && game == b) {
printf("你出的是 布 ,电脑出的是 布,平局!\n");
d = d + 1;
}
if (a == 2) {
printf("对局结束: 你 %d 胜 %d 负 %d 平 胜利了!", a, c, d);
return 0;
}
if (c == 2) {
printf("对局结束: 你 %d 胜 %d 负 %d 平 惜败了!加油!", a, c, d);
return 0;
}
if (i == 5 && a < 0 && c < 0) {
printf("对局结束: 你 %d 胜 %d 负 %d 平 平局了!", a, c, d);
return 0;
}
}
return 0;
}
运行结果及报错内容
只能输入一个值,后面四次循环不能输入了。不知道这样通过输入的s j b 来判断石头剪刀布是否正确
我想要达到的结果
可以每次输入一个值