用C语言如何编写一个石头剪子布的程序

2024-11-24 12:21:29
推荐回答(5个)
回答1:

#include

#include

#include

void main()

{

int com,user;

char c;

srand((unsigned)time(NULL)); //初始化随机数,如果没有这条语句,每次运行电脑产生的随机数序列都是一样的

printf("进入游戏\n");

do{

printf("请出拳(1.剪刀、2.石头、3.布):");

scanf("%d",&user);

com=rand()%3+1; //产生1-3范围内的随机数

printf("电脑出%s\n",com==1?"剪刀":com==2?"石头":"布");

switch(com-user) //用电脑产生的数和用户输入的数的差值来判断胜负

{

case 0:

printf("平手\n");

break;

case 1:

case -2:

printf("电脑赢了\n");

break;

case -1:

case 2:

printf("你赢了\n");

}

printf("继续游戏按Y键、其它键退出");

getchar();

c=getchar();

}while(c=='y' || c=='Y');

printf("已经退出游戏");

}

扩展资料

C++编程: 石头剪子布

#include

#include

using namespace std;

int main()

{

 int n;

 char a[10],b[10];

 cin>>n;

 int c[n+3];

 for(int i=1;i<=n;i++)

 {

 cin>>a>>b;

 if(a[0]=='R')

 {

 if(b[0]=='R')

 {

 c[i]=0;

 }

 if(b[0]=='S')

 {

 c[i]=1;

 }

 if(b[0]=='P')

 {

 c[i]=2;

 }

 }

 else if(a[0]=='S')

 {

 if(b[0]=='R')

 {

 c[i]=2;

 }

 if(b[0]=='S')

 {

 c[i]=0;

 }

 if(b[0]=='P')

 {

 c[i]=1;

 }

 }

 else if(a[0]=='P')

 {

 if(b[0]=='R')

 {

 c[i]=1;

 }

 if(b[0]=='S')

 {

 c[i]=2;

 }

 if(b[0]=='P')

 {

 c[i]=0;

 }

 }

 }

 for(int i=1;i<=n;i++)

 switch(c[i])

 {

 case 0:

 {

 printf("Tie\n");break;

 } 

 case 1:

 {

 printf("Player1\n");break;

 }

 case 2:

 {

 printf("Player2\n");break;

 }

 }

 return 0;

}

回答2:

用C语言编写一个石头剪子布的程序
石头=1;剪子=2;布=3
先是人输入一个数放在变量ren了
然后是程序随机产生三个数(1,2,3)放在变量ji里
if(ren==ji) printf("REPLAY!");
esle if(ren==1&&ji==2) printf("YOU WIN");
else if(ren==2&&ji==3) printf("YOU WIN");
else if(ren==3&&ji==1) printf("YOU WIN");
else printf(YOU LOST!");
条件是你可以赢的情况(用枚举法一一例出来)

回答3:

用随机函数 产生012这三个随机数~
VB的函数我就记得C的不记得哈`不能帮上你忙

回答4:

回答者:依旧飘流 - 高级魔法师 六级 12-18 13:35
他说的不错,同时 是要你把条件说出来的,不然我们也不好来帮你,

回答5:

说具体点