第03天C语言(18):石头剪子布
一、概念
/*
#include
arc4random_uniform(3);
//arc4random_uniform 方法会根据传入的整数 生成一个随机数
生成的值 就是 0~[N-1]的值
0~2
*/
二、代码
#include
#include// 随机数的一个库int main()
{
/*
有两个角色 : 玩家(我), 电脑
两个角色都可以出0 == 石头/ 1 == 剪刀/ 2 == 布
由于我们不知道玩家 和 电脑到底出的什么拳, 所以我们用 0、1、2 来代替 石头 / 剪刀 / 布
玩家的出拳 可以让用户自己输入
电脑的出拳 必须生成一个 随机数, 如何生成一个随机数?
将玩家出拳 和 电脑的出拳进行比较, 得到比赛结果
*/// 石头 > 剪刀 / 剪刀 > 布 / 布 > 石头
#pragma 1. 随机数 (导入)
// 1. 生成电脑的出拳
// arc4random_uniform(3);
//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);
// 3.比较玩家 和 电脑的出拳
/*
if (玩家石头 电脑剪刀 ||
玩家剪刀电脑布 ||
玩家布 电脑石头)
{
printf("玩家获胜");
}
else if (电脑石头 玩家剪刀 ||
电脑剪刀玩家布 ||
电脑布 玩家石头)
{
printf("电脑获胜");
}
else
{
printf("和局");
}
*/
// 4.输出结果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");
}printf("玩家出拳 %i,电脑出拳 %i\n",player,cmp);
return 0;
}
推荐阅读
- OC语言day08-08不可变字典NSDictionary
- 一分钟系列|笑傲江湖|一分钟系列|笑傲江湖 第八章 面壁
- {调取该文章的TAG关键词}|靠补助和减持保持盈利,CT设备巨头东软医疗第四次递表丨IPO速递
- R语言在散点图中添加lm线性回归公式的问题
- 商学院——《沙漠风云》之第一回|商学院——《沙漠风云》之第一回 大小穿越、商战前传,各路精英、蓄势待发
- 投稿|角逐制药行业第四次革命浪潮:抗体药物研发开启“海王计划”
- 盘点云顶第三赛季的那些亮点!或是自走棋界的巅峰之作!
- 李子柒停更的第47天,评论区留下3000条评论(仙女求你快回来!)
- VC/PE圈第一波招聘(5天,我们收了600份简历)
- 投稿|用手机的逻辑卖车,能收获年轻人的第一个好评吗?