• 大小: 2KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-06-07
  • 语言: C/C++
  • 标签: C  算法  

资源简介

由人输入火柴棒总数和每次可以拿走火柴棒的数量。 游戏开始后,人拿走火柴若干,机器也拿走火柴若干,周而复始,直到火柴棒被拿光。拿走最后一根者,获胜

资源截图

代码片段和文件信息

#include 
#include 

/* 递归抽取函数TakeOut
功能:玩家、电脑轮流抽,到 <= per 判定输赢并返回
每轮,给定总数,玩家、电脑各抽一次,每次抽取1到per,返回剩余数量,到下一轮
参数:一轮前的数量
返回:一轮后的数量
*/
int TakeOut(int remainint per)
{
int d;
//-----玩家抽前判断---------
if(remain <= per) //留给玩家5根以下,玩家赢。
{
printf (“玩家赢!\n“);
return remain;
}
//--------------------------
//-------玩家抽取-----------
do
{
do
{
printf (“现有火柴%d根,请玩家抽取火柴(1-%d)根:“remainper);scanf (“%d“&d); 
}while(d > per || d < 1 ); //玩家犯规,不按规定抽取火柴,罚其重新抽取

}
while(d >= remain);
remain -= d;
//-------------------------
//-------玩家抽后被判定----------
if(remain <= per) // 留给电脑5根以下,玩家输。
{

评论

共有 条评论