pragma mark 石頭剪刀布
/**
* 隨機(jī)數(shù)(函數(shù)庫(kù) stdlib.h)
* arc4random_uniform(n) 生成 的值就是 0~(n-1)的值
*/
#include <stdio.h>
#include <stdlib.h>
int main()
{
/*
有兩個(gè)角色 : 玩家(我)、電腦
兩個(gè)角色 都可以出 0 == 石頭/ 1 == 剪刀/ 2 == 布
由于我們不知道玩家和電腦到底出的是什么拳,所以我們用0,1,2來(lái)代替石頭/剪刀/布
玩家的出拳可以讓用戶(hù)輸入
電腦的出拳必須 生產(chǎn) 一個(gè)隨機(jī)數(shù), 如何生成隨機(jī)數(shù)?
將玩家的出拳和電腦的出拳進(jìn)行比較, 得到比賽結(jié)果
石頭 > 剪刀
剪刀 > 布
布 > 石頭
*/
// 1. 生成 電腦的出拳
// arc4random_uniform方法會(huì)根據(jù)傳入的整數(shù) 生成一個(gè)隨機(jī)數(shù)
// 生成 的值就是 0~(N-1)的值
int cmp = arc4random_uniform(3);
// printf("cmp = %i\n",cmp);
// 2. 接收玩家的出拳
// 2.1 定義變量保存玩家的出拳
int player = - 1;
// 2.2 利用scanf 接收
printf("請(qǐng)輸入出拳,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. 輸出結(jié)果
printf("player %i, cmp %i\n",player,cmp);
return 0;
}
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。