C语言:剪刀石头布游戏。计算机通过随机数字确定1-3,然后开始游戏。 如果PC赢了,它输出 "I win",程序结束;否则,它输出 "You win",程序结束。
已给出的程序如下,扩展这个例子,与电脑进行三局两胜的石头剪子布游戏。 如果其中一个玩家先赢了三次,则输出 "x比x,我(你)赢了 "并终止程序。
#include"ransu.h"
int game(int a, int b){
if(a == b) return 0;
else if((a==1&&b==2)||(a==2&&b==3)||
(a==3&&b==1)) return 1;
else return 2;
}
int main(){
int a, b, i = 0, j;
srand(time(NULL));
printf(" 1: Rock 2: Paper 3: Scissors \n");
while(i == 0) {
printf("input 1, 2, 3\n");
scanf("%d", &a);
b = 3 * RAND() + 1;
printf("I am %d \n", b);
j = game(a, b);
if(j == 0){
printf(" one more \n");
} else if(j == 1){
printf("I win. \n");
i++;
} else {
printf("You win. \n");
i++;
}
}
}
#include"stdio.h"
#include <stdlib.h>
#include <time.h>
int game(int a, int b)
{
if(a == b)
return 0;
else if((a==1&&b==2)||(a==2&&b==3)||
(a==3&&b==1))
return 1;
else
return 2;
}
int main()
{
int a, b, i = 0, j,t=0,n1=0,n2=0;
srand(time(NULL));
printf(" 1: Rock 2: Paper 3: Scissors \n");
while(n1!=3 && n2!=3){
i=0;
while(i == 0)
{
printf("input 1, 2, 3\n");
scanf("%d", &a);
b = rand()%3 + 1;
printf("I am %d \n", b);
j = game(a, b);
if(j == 0)
{
printf(" one more \n");
}
else if(j == 1)
{
printf("I win. \n");
i++;
n1++;
}
else
{
printf("You win. \n");
i++;
n2++;
}
}
}
if(n1==3){
printf("%d比%d,我赢了",n1,n2);
}
else
printf("%d比%d,你赢了",n1,n2);
}