马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
/*做不好请大家指出*/
#include<stdio.h>
#define da printf
#define g(h) h/2
void main()
{
int ms;
char mnbvcxz,name[30],name_1[30],qd;
/*双人模式数据*/
int q, w, q1=0, w1=0, ju, se, ty;
/*单人模式数据*/
int j, r, jq=0, rq=0;
int a, b, c, d, e, f, g, h, p;
/*单人模式的5个机器人*/
int aa[]={0,1,2,1,1,1,0,1,0,2,2,2,0,0,2,1,1,0,2,1,2,0,1,2,0,1,2,0,1,2,0,0,0,1,2,1,2,1,2,1,2,1,0,1,2,1,2,1,2,0,0,1,0,2,1,2,1,2,0,1,2,1,2,1,2,1,0,0,0,2,1,2,1,2,1,1,1,2,1,2,1,2,2,2,0,1,2,1,1,1,0,1,0,2,2,2,0,0,2,1,1,0,2,1,2,0,1,2,0,1,2,0,1,2,0,0,0,1,2,1,2,1,2,1,2,1,0,1,2,1,2,1,2,0,0,1,0,2,1,2,1,2,0,1,2,1,2,1,2,1,0,0,0,2,1,2,1,2,1,1,1,2,1,2,1,2,2,2};
int bb[]={2,1,2,0,1,2,1,2,1,0,2,1,0,2,1,0,2,1,0,2,1,2,1,1,0,1,0,2,1,0,1,2,0,1,2,0,2,1,0,2,1,0,0,0,2,0,1,0,1,2,0,0,1,0,2,1,0,2,0,2,1,0,2,1,1,0,2,1,2,1,1,2,0,0,2,1,2,1,2,0,2,0,2,0,2,1,2,0,1,2,1,2,1,0,2,1,0,2,1,0,2,1,0,2,1,2,1,1,0,1,0,2,1,0,1,2,0,1,2,0,2,1,0,2,1,0,0,0,2,0,1,0,1,2,0,0,1,0,2,1,0,2,0,2,1,0,2,1,1,0,2,1,2,1,1,2,0,0,2,1,2,1,2,0,2,0,2,0};
int cc[]={2,1,1,0,1,0,2,1,0,1,2,0,1,2,0,2,1,0,2,1,0,1,1,0,2,1,2,1,1,2,0,0,2,1,2,1,2,0,2,0,2,0,0,0,2,0,1,0,1,2,0,0,1,0,2,1,0,2,0,2,1,0,2,2,1,2,0,1,2,1,2,1,0,2,1,0,2,1,0,2,1,0,2,1,2,1,1,0,1,0,2,1,0,1,2,0,1,2,0,2,1,0,2,1,0,1,1,0,2,1,2,1,1,2,0,0,2,1,2,1,2,0,2,0,2,0,0,0,2,0,1,0,1,2,0,0,1,0,2,1,0,2,0,2,1,0,2,2,1,2,0,1,2,1,2,1,0,2,1,0,2,1,0,2,1,0,2,1};
int dd[]={0,0,2,0,1,0,1,2,0,0,1,0,2,1,0,2,0,2,1,0,2,2,1,2,1,2,1,2,1,2,1,0,2,0,2,0,2,0,1,1,0,1,2,1,0,2,0,0,1,1,2,2,2,0,0,1,2,0,2,0,2,1,0,2,1,0,2,1,0,2,1,0,2,1,0,2,1,0,2,1,2,0,1,2,0,0,2,0,1,0,1,2,0,0,1,0,2,1,0,2,0,2,1,0,2,2,1,2,1,2,1,2,1,2,1,0,2,0,2,0,2,0,1,1,0,1,2,1,0,2,0,0,1,1,2,2,2,0,0,1,2,0,2,0,2,1,0,2,1,0,2,1,0,2,1,0,2,1,0,2,1,0,2,1,2,0,1,2};
int ee[]={1,1,0,2,1,2,1,1,2,0,0,2,1,2,1,2,0,2,0,2,0,0,0,2,0,1,0,1,2,0,0,1,0,2,1,0,2,0,2,1,0,2,2,1,1,0,1,0,2,1,0,1,2,0,1,2,0,2,1,0,2,1,0,2,0,0,2,1,2,1,2,0,2,0,2,0,0,0,2,1,0,2,0,0,1,1,0,2,1,2,1,1,2,0,0,2,1,2,1,2,0,2,0,2,0,0,0,2,0,1,0,1,2,0,0,1,0,2,1,0,2,0,2,1,0,2,2,1,1,0,1,0,2,1,0,1,2,0,1,2,0,2,1,0,2,1,0,2,0,0,2,1,2,1,2,0,2,0,2,0,0,0,2,1,0,2,0,0};
da("请输入用户名:");
scanf("%s",&name);
da("%s:\n你好\n欢迎游玩本游戏\n本游戏是猜拳游戏\n请你选择模式:\n双人模式输入:0\n单人模式输入:1\n请输入:",name);
scanf("%c",&mnbvcxz);
CON:
scanf("%d",&ms);
if(ms>1)
{
da("输入错误,请重新选择:");
goto CON;
}
da("确定吗?\n是:y\n不:n\n请输入:");
scanf("%c",&mnbvcxz);
scanf("%c",&qd);
if(qd=='n')
{
da("请选择:");
goto CON;
}
switch(ms)
{
case 0:
/*双人模式*/
da("1玩家:%s\n2玩家:",name);
scanf("%s",&name_1);
da("输入要玩几局:");
scanf("%d",&ju);
if(g(ju)==ju-g(ju))
{
se=ju/2;
}
else
{
se=ju/2+1;
}
da("本轮%d局,%d胜\n",ju,se);
for(ty=0;ty<ju;ty++)
{
CON2:
da("0.是石头\n1.是剪刀\n2.是布\n\n请%s出拳:",name);
scanf("%d",&q);
if(q==0)
{
for(h=0;h<30;h++)
{
da("%s已出拳 ! !!!!!!!!!!!!!\n",name);
}
}
else
{
if(q==1)
{
for(h=0;h<30;h++)
{
da("%s已出拳!!!!!!!!!!!\n",name);
}
}
else
{
if(q==2)
{
da("%s已出拳 !!!!!!!!!!!\n",name);
}
else
{
goto CON2;
}
}
}
CON3:
da("0.是石头\n1.是剪刀\n2.是布\n\n请%s出拳:",name_1);
scanf("%d",&w);
if(q==w)
{
da("$平局$\n目前比分:\n%d:%d\n",q1,w1);
}
else
{
if(q==0)
{
if(w==1)
{
q1++;
da("%s出石头战胜了%s的剪刀\n目前比分:\n%d:%d\n",name,name_1,q1,w1);
if(q1==se)
{
da("%s获胜\n%s赢了%d局,而%s只赢%d局\n",name,name,q1,name_1,w1);
goto CON4;
}
}
else//w==2
{
w1++;
da("%s出布战胜了%s的石头\n目前比分:\n%d:%d\n",name_1,name,q1,w1);
if(w1==se)
{
da("%s获胜\n%s赢了%d局,而%s只赢%d局\n",name_1,name_1,w1,name,q1);
goto CON4;
}
}
}
else
{
if(q==1)
{
if(w==0)
{
w1++;
da("%s出石头战胜了%s的剪刀\n目前比分:\n%d:%d\n",name_1,name,q1,w1);
if(w1==se)
{
da("%s获胜\n%s赢了%d局,而%s只赢%d局\n",name_1,name_1,w1,name,q1);
goto CON4;
}
}
else//w==2
{
q1++;
da("%s出剪刀战胜了%s的布\n目前比分:\n%d:%d\n",name,name_1,q1,w1);
if(q1==se)
{
da("%s获胜\n%s赢了%d局,而%s只赢%d局\n",name,name,q1,name_1,w1);
goto CON4;
}
}
}
else//q==2
{
if(w==0)
{
q1++;
da("%s出布战胜了%s的石头\n目前比分:\n%d:%d\n",name,name_1,q1,w1);
if(q1==se)
{
da("%s获胜\n%s赢了%d局,而%s只赢%d局\n",name,name,q1,name_1,w1);
goto CON4;
}
}
else
{
if(w==1)
{
w1++;
da("%s出剪刀战胜了%s的布\n目前比分:\n%d:%d\n",name_1,name,q1,w1);
if(w1==se)
{
da("%s获胜\n%s赢了%d局,而%s只赢%d局\n",name_1,name_1,w1,name,q1);
goto CON4;
}
}
else
{
goto CON3;
}
}
}
}
}
}
CON4:
da("还想再玩其他的吗?\n想输入:Y\n不想输入:N\n请输入:");
scanf("%c",&mnbvcxz);
scanf("%c",&ms);
if(ms=='Y')
{
da("想玩输入对应数字:\n单人模式:1\n如果想再玩本模式输入:0\n请输入:");
goto CON;
}
break;
case 1:
/*单人模式*/
printf("开始单人猜拳游戏\n请先选择与几号机器人对决\n请输入它们对应编码\n1号机器人:0\n2号机器人:1\n3号机器人:2\n4号机器人:3\n5号机器人:4\n");
CONXIN:
scanf("%d",&a);
if(a<5)
{
b=a+1;
printf("%s想和%d机器人玩几局:",name,b);
scanf("%d",&c);
if(g(c)==c-g(c))
{
d=c/2;
}
else
{
d=c/2+1;
}
printf("谁先赢%d局谁胜!!!!\n",d);
printf("请输入一个50以下的数:");
scanf("%d",&e);
g=e+c;
f=e;
for(;f<g;f++)
{
if(a==0)
{
j=aa[f];
}
else
{
if(a==1)
{
j=bb[f];
}
else
{
if(a==2)
{
j=cc[f];
}
else
{
if(a==3)
{
j=dd[f];
}
else
{
j=ee[f];
}
}
}
}
if(j==0)
{
printf("%d号机器人出了石头\n",b);
}
else
{
if(j==1)
{
printf("%d号机器人出了剪刀\n",b);
}
else
{
printf("%d号机器人出了布\n",b);
}
}
if(j==0)
{
for(h=0;h<30;h++)
{
printf("%d号机器人出了 ! !\n",b);
}
}
else
{
if(j==1)
{
for(h=0;h<30;h++)
{
printf("%d号机器人出了!!\n",b);
}
}
else
{
for(h=0;h<30;h++)
{
printf("%d号机器人出了 !!\n",b);
}
}
}
printf("0.是石头\n1.是剪刀\n2.是布\n\n现在该%s出拳:",name);
CONXING:
scanf("%d",&r);
if(r<3)
{
if(j==r)
{
printf("$平局$\n");
g++;
printf("目前比分%d:%d\n",jq, rq);
printf("输入任意数,继续:");
scanf("%d",&p);
}
else
{
if(j==0)
{
if(r==1)
{
jq++;
printf("%d号机器出石头战胜了%s的剪刀!\n目前比分%d:%d\n",b,name,jq, rq);
printf("输入任意数,继续:");
scanf("%d",&p);
if(jq==d)
{
printf("%d号机器人赢了\n赢了%d局\n而%s只赢%d局\n",b,jq,name,rq);
goto QWE;
}
}
else
{
rq++;
printf("%s出布战胜%d号机器人的石头!\n目前比分%d:%d\n",name,b,jq, rq);
printf("输入任意数,继续:");
scanf("%d",&p);
if(rq==d)
{
printf("%s赢了\n赢了%d局\n而%d号机器人只赢%d局\n",name,rq,b,jq);
goto QWE;
}
}
}
else
{
if(j==1)
{
if(r==0)
{
rq++;
printf("%s出石头战胜%d号机器人的剪刀!\n目前比分%d:%d\n",name,b,jq, rq);
printf("输入任意数,继续:");
scanf("%d",&p);
if(rq==d)
{
printf("%s赢了\n赢了%d局\n而%d号机器人只赢%d局\n",name,rq,b,jq);
goto QWE;
}
}
else
{
jq++;
printf("%d号机器出剪刀战胜了%s的布!\n目前比分%d:%d\n",b,name,jq, rq);
printf("输入任意数,继续:");
scanf("%d",&p);
if(jq==d)
{
printf("%d号机器人赢了\n赢了%d局\n而%s只赢%d局\n",b,jq,name,rq);
goto QWE;
}
}
}
else
{
if(r==0)
{
jq++;
printf("%d号机器出布战胜了%s的石头!\n目前比分%d:%d\n",b,name,jq, rq);
printf("输入任意数,继续:");
scanf("%d",&p);
if(jq==d)
{
printf("%d号机器人赢了\n赢了%d局\n而%s只赢%d局\n",b,jq,name,rq);
goto QWE;
}
}
else
{
rq++;
printf("%s出剪刀战胜%d号机器人的布!\n目前比分%d:%d\n",name,b,jq, rq);
printf("输入任意数,继续:");
scanf("%d",&p);
if(rq==d)
{
printf("%s赢了\n赢了%d局\n而%d号机器人只赢%d局\n",name,rq,b,jq);
goto QWE;
}
}
}
}
}
}
else
{
printf("请重新输入:");
goto CONXING;
}
}
}
else
{
printf("请重新输入:");
goto CONXIN;
}
QWE:
printf("\n");
da("还想再玩其他的吗?\n想输入:Y\n不想输入:N\n请输入:");
scanf("%c",&mnbvcxz);
scanf("%c",&ms);
if(ms=='Y')
{
da("想玩输入对应数字:\n双人模式:0\n如果想再玩本模式输入:1\n请输入:");
goto CON;
}
break;
}
} |