C 语言 猜拳 五局三胜

2025-05-04 21:52:40
推荐回答(3个)
回答1:

#include
#include
#include
int main()
{int i ,j,w=0,l=0,e=0,p=0;char d;
while(d!='n')
{ srand(time(NULL));
cout<<"石头(0),剪刀(1),布(2)"<cin>>i;

loop:
if((i>=3)||(i<0))
{cout<<"you are input error!"< j=rand()%3;
if(i==j)
{cout<<"平"< p++;
cout<<"石头(0),剪刀(1),布(2)"< cin>>i;goto loop;}
else if(j==0)
if(i==2)
{cout<<"\1you are win!\1"< else
{cout<<"you are lose!"< else if(j==1)
if(i==0)
{cout<<"\1you are win!\1"< else {cout<<"you are lose!"< else if(j==2)
if(i==1)
{cout<<"\1you are win!\1"< else {cout<<"you are lose!"<end:
cout<<"Are you again? y or n"<cin>>d;}
cout<<"you are win:"<return 0;
}

回答2:

本人初学者,学着做了做,程序如下:
#include
#include
#include
void main()
{int i,j,a,g,n,m;char s;
srand((unsigned)time(NULL));
do{n=0;m=0;
do{
g=rand()%3+1;
n++;
printf("请选择 1-剪刀 2-石头 3-布\n");
scanf("%d",&a);
if(g==a)printf("平局\n");
if(a==2&&g==1||a==3&&g==2||a==1&&g==3){printf("您赢了\n");m++;}
if(a==1&&g==2||a==2&&g==3||g==1&&a==3)printf("你输了\n");
if(n==5)break;
}while(1);

if(n==5&&m>=3)
printf("共%d局,您赢了%d局,恭喜您获胜了!!!",n,m);
else printf("共%d局,您赢了%d局,您失败了!!!",n,m);
printf("是否继续y/n:");
scanf(" %c",&s);
if(s=='n')exit(1);
}while(1);
}

回答3:

伪代码:
while( isFin ) { //是否结束
computer = random()%3; //电脑
scanf(player); //玩家
judge(computer, player, &result); //比较
shouldEnd( result, &isFin ); //分出胜负?
IsFinAndWantRepeat( &isFin ); //还想再来一次吗
}