栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

21 根火柴游戏(常胜将军)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

21 根火柴游戏(常胜将军)

问题来自头歌

任务描述

本关任务:火柴游戏。

相关知识

为了完成本关任务,你需要掌握:C 语言基础。

火柴游戏

21 根火柴游戏。现有 21 根火柴,两人轮流取,每人每次可以取 1 至 4 根,不可多取(假如多取或者取走的数量不在合法的范围内,则要求重新输入),也不能不取,谁取最后一根火柴谁输。请编写一个程序进行人机对弈,要求人先取,计算机后取;请设计一种计算机取走火柴的规则,使得计算机一方为常胜将军。

#include 
#include 
int main()
{
	int hcs = 21,czs=0;//总数,局数
	int q;//取的火柴数目
	printf("Game begin:n");
	while(hcs > 0)
	{
		if(czs % 2 == 0)
		{
			do
			{
				if(hcs>4)
				    printf("How many sticks do you wish to take (1~4)?");
				else
				printf("How many sticks do you wish to take (1~%d)?",hcs);
				scanf("%d",&q);
			}while(q>hcs||q>4);
			hcs = hcs - q;
		}
		else 
		{
			q = (hcs - 1) % 5; 
			printf("Computer take %d sticks.n",q);
			hcs = hcs - q;
		}
		
		if(hcs==0)
			printf("You have taken the last sticks.n***You lose!nGame Over." );
		else
		    printf("%d sticks left in the pile.n",hcs);
		++czs;
	}
}

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/879439.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号