pragma mark 石头剪刀布
/**
* 随机数(函数库 stdlib.h)
* arc4random_uniform(n) 生成 的值就是 0~(n-1)的值
*/
#include <stdio.h>
#include <stdlib.h>
int main()
{
/*
有两个角色 : 玩家(我)、电脑
两个角色 都可以出 0 == 石头/ 1 == 剪刀/ 2 == 布
由于我们不知道玩家和电脑到底出的是什么拳,所以我们用0,1,2来代替石头/剪刀/布
玩家的出拳可以让用户输入
电脑的出拳必须 生产 一个随机数, 如何生成随机数?
将玩家的出拳和电脑的出拳进行比较, 得到比赛结果
石头 > 剪刀
剪刀 > 布
布 > 石头
*/
// 1. 生成 电脑的出拳
// arc4random_uniform方法会根据传入的整数 生成一个随机数
// 生成 的值就是 0~(N-1)的值
int cmp = arc4random_uniform(3);
// printf("cmp = %i\n",cmp);
// 2. 接收玩家的出拳
// 2.1 定义变量保存玩家的出拳
int player = - 1;
// 2.2 利用scanf 接收
printf("请输入出拳,0代表石头, 1代表剪刀,2代表布\n");
scanf("%i",&player);
/*
if (玩家石头 电脑剪刀 ||
玩家剪刀 电脑布 ||
玩家布 电脑石头)
{
printf("玩家 胜利");
}
else if (电脑石头 玩家剪刀 ||
电脑剪刀 玩家布 ||
电脑布 玩家石头)
{
printf("电脑获胜");
}
else
{
printf("平局");
}
*/
// 3. 比较玩家和电脑的出拳
if (((0==player)&& (1==cmp)) ||
((1==player)&& (2==cmp)) ||
((2==player)&& (0==cmp)))
{
printf("玩家 胜利\n");
}
else if (((0==cmp)&& (1==player)) ||
((1==cmp)&& (2==player)) ||
((2==cmp)&& (0==player)))
{
printf("电脑 胜利\n");
}
else
{
printf("平局\n");
}
// 4. 输出结果
printf("player %i, cmp %i\n",player,cmp);
return 0;
}