c语言猜拳游戏简单代码(c语言猜拳代码流程图)
用c语言怎么写猜拳游戏啊!我刚刚学一个月
#includecstdio
#includecstdlib
#includectime
int?main()
{
????int?a=0,b=0,i,c,h,wr;
????printf("飞行棋,先输入格子数,之后每次输入1-3的数(上限100)\n");
????printf("输入格子数:");?
????scanf("%d",h);
???a=a+h;b=b+h;
???while(1)
????{
????printf("1=石头2=剪刀3=布\n");
????printf("?????????????????*??????*???*???***\n????????????????***??????*?*????***\n????????????????*?*???????*?????***\n");
????printf("输入1~3\n");
????printf("----------------------------------\n");
????scanf("%d",i);
????srand(time(0));
????c=rand()%3;
????if(i==1c==2||i==2c==3||i==3c==1)
????{a=a-1;
????printf("你赢了,前进一步\n你还剩%d?电脑剩%d\n",a,b);
????printf("*--------------------------------*\n");}
????else?if(c==1i==2||c==2i==3||c==3i==1)
????{b=b-1;
????printf("你输了,电脑前进\n你还剩%d?电脑剩%d\n",a,b);
?????printf("/--------------------------------/\n");}
????else?{printf("平局\n你还剩%d?电脑剩%d\n",a,b);
?????printf("?--------------------------------?\n");}
????if(a==0||b==0)break;}
????
????if(a==0)printf("you?win\n");
????else?printf("you?lose\n");????
system("pause");
}
用c语言设计人和电脑的猜拳游戏,越简单越好,谢谢
#includestdio.h
#includestdlib.h
#includetime.h
int?isWin(int,int);//返回:0:平均。1:玩家胜。2:玩家败
int?main()
{
????char?p,name[3][5]={"石头","剪刀","布"};
????int?n;
????srand(time(NULL));
????while(1)
????{
????????printf("请输入你要出拳对应的数字:0、石头。1、剪刀。2、布。\n");
????????scanf("%[0-2]",p);
????????getchar();
????????n=rand()%3;
????????printf("电脑:%s?!\n玩家:%s?!\n",name[n],name[(p-'0')]);
????????switch(isWin(n,p-'0'))
????????{
????????????case?0:printf("玩家败!\n\n");break;
????????????case?1:printf("玩家胜!\n\n");break;
????????????case?2:printf("平局!\n\n");break;
????????????default?:?printf("error\n\n");
????????}
????}
????return?0;
}
int?isWin(int?n1,int?n2)//n1:电脑出拳。n2:玩家出拳。返回:2:平均。1:玩家胜。2:玩家败
{
????if(n1==n2)
????????return?2;
????if(n2-n1==-1?||?n2-n1==2)
????????return?1;
????if(n2-n1==1?||?n2-n1==-2)
????????return?0;
????return?-1;
}
C#猜拳代码(选择结构)
private void button1_Click(object sender, EventArgs e)
? ? ? ? {
? ? ? ? ? ? int rn, dn;//电脑、人脑出拳,0,1,2代表剪刀,石头,布
? ? ? ? ? ? string msg = "";
? ? ? ? ? ? //利用随机函数,随机取得0-2
? ? ? ? ? ? Random r = new Random();
? ? ? ? ? ? dn = r.Next(3);
? ? ? ? ? ? rn = int.Parse(textBox1.Text);
? ? ? ? ? ? rn--;
? ? ? ? ? ? //输出电脑出的拳
? ? ? ? ? ? switch (dn)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? case 0:
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? msg+="电脑出剪刀,";
? ? ? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? case 1:
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? msg += "电脑出石头,";
? ? ? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? case 2:
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? msg += "电脑出布,";
? ? ? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? ? ? //排除输入错误的情况
? ? ? ? ? ? if (rn 0 || rn 2)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? msg+="你赖皮";
? ? ? ? ? ? }
? ? ? ? ? ? //计算并输出结果
? ? ? ? ? ? else
? ? ? ? ? ? {
? ? ? ? ? ? ? ? if (dn == rn)
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? msg += "平局!";
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? else if (dn - rn == 1 || dn - rn == -2)
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? msg += "电脑胜!";
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? msg += "你赢了!";
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? ? ? MessageBox.Show(msg);
? ? ? ? }
//两台电脑一个玩家的程序中,两个随机数的生成方法为:
????????Random r1, r2;
? ? ? ? ? ?r1 = new Random();
? ? //利用第一个随机数,扰乱第二个随机数,否则随机值相同。
? ? ? ? ? ?r2 = new Random(r1.Next());
? ? ? ? ? ? MessageBox.Show(r1.Next(3).ToString() + "," + r2.Next(3).ToString());
求C语言猜拳游戏代码
#include stdio.h
#include stdlib.h
#include time.h
void main()
{
int rand_0(void);
int game(int inp);
int start,yes=1,inp,inp_1=1; char y;
while(yes) /*预防用户输入1或2以外的数据*/
{
printf("1:开始游戏\n2:排行榜\n");
scanf("%d",start);
if((start!=1)(start!=2))
{
printf("请输入1或2\n");
}
else
yes=0;
}
start:
if(start==1) /*如果用户选择开始游戏……*/
{
printf("你出?\n1:石头\n2:剪刀\n3:布\n");
while(inp_1) /*预防用户输入别的数据*/
{
scanf("%d",inp);
if((inp!=1)(inp!=2)(inp!=3))
{
printf("你出?\n1:石头\n2:剪刀\n3:布\n");
}
else
{
inp_1=0;
switch(game(inp))
{
case 1:printf("\n\n恭喜你,你赢了!\n\n");break;
case 0:printf("\n\n很遗憾,你输了!\n\n");break;
case 2:printf("\n\n平局\n\n");break;
}
}
}
}
inp_1=1;
printf("\n\n是否重新开始游戏?(y/n)");
scanf("%s",y);
if((y=='y')||y=='Y')
goto start;
else
return 0;}
int rand_0(void) /*取随机数*/
{
int i,rand_1;
srand((unsigned)time(NULL));
for(i=1;i=10;i++)
{
rand_1=rand()%4;
if(rand_1==0) continue;
return(rand_1);
}
}
int game(int inp)
{
int random,win; /*win变量,1是赢,2是平,0是输*/
random=rand_0();
switch(inp)
{
case 1:if(random==3) return win=0;
else if(random==2) return win=1;
else return win=2;
case 2:if(random==3) return win=1;
else if(random==2) return win=2;
else return win=0; case 3:if(random==3) return win=2;
else if(random==2) return win=1;
else return win=0;
}
}就做了那么点点。。。
求帮忙用C语言完成一个猜拳游侠
#include?stdio.h
#include?stdlib.h
#include?time.h
int?main()?{
char?type[][5]?=?{"剪刀","石头","布"};
int?computer,?you;
int?win?=?0,lose?=?0,equal?=?0;
srand((unsigned)time(NULL));
computer?=?rand()%3?+?1;
printf("电脑已出来了,该你啦\n");
printf("1、剪刀?2、石头?3、布?0、游戏结束\n");
printf("请出拳:");
while(1)?{
scanf("%d",you);
if(you?==?0)?break;
if(you??1?||?you??3)?{
printf("无效,重来:");
continue;
}
printf("\n你:《%s》,电脑:《%s》\n",type[you?-?1],type[computer?-?1]);
if(computer?==?1)?{
if(you?==?1)?{?printf("\n平手,旗鼓相当啊!\n");?++equal;?}
else?if(you?==?2)?{?printf("\a你赢,厉害!\n");?++win; }
else?{?printf("你输,别气馁!\n");?++lose;?}
}
else?if(computer?==?2)?{
if(you?==?1)?{?printf("你输,别气馁!\n");?++lose;?}
else?if(you?==?2)?{?printf("平手,旗鼓相当啊!\n");?++equal;?}
else?{?printf("\a你赢,厉害!\n");?++win;?}
}
else?{
if(you?==?1)?{?printf("\a你赢,厉害!\n");?++win;?}
else?if(you?==?2)?{?printf("你输,别气馁!\n");?++lose;?}
else?{?printf("平手,旗鼓相当啊!\n");?++equal;?}
}
printf("\n");
computer?=?rand()%3?+?1;
printf("电脑已出来了,该你啦\n");
printf("1、剪刀?2、石头?3、布?0、游戏结束\n");
printf("请出拳:");
}
printf("赢:%d,输:%d,平:%d\n",win,lose,equal);
return?0;
}