剪刀石头布
0 --剪刀 1--石头 2--布
0剪刀 1石头 1石头胜(1-0=1)
1石头 2布 2布胜(2-1=1)
2布 0剪刀 0剪刀胜(0-2=-2)
因此当出现如上情况时会有一方胜利
当双方相同时则平局
因此
num-num1==1||num-num1==-2时可以判断胜负
#include <stdio.h>
#include <stdlib.h>
void pd(int num){
int num1 = arc4random_uniform(2);
if(num-num1==1||num-num1==-2)
{
printf("%d玩家胜\n",num1);
scanf("%d",&num);
pd(num);
}
else
if(num==num1){
printf("%d双方一样未分胜负,请重新输入",num1);
scanf("%d",&num);
pd(num);
}
else
{
printf("%d电脑胜\n",num1);
scanf("%d",&num);
pd(num);
}
}
int main(int argc, const char * argv[]) {
// insert code here...
int num;
printf(" 0 --剪刀 1--石头 2--布\n");
scanf("%d",&num);
pd(num);
return 0;
}