当前位置: 首页 > news >正文

合肥专业网站制作设计百度科技有限公司

合肥专业网站制作设计,百度科技有限公司,绍兴企业网站开发,美国靠谱做调查网站一、游戏介绍 三子棋,英文名为 Tic - Tac - Toe,是一款简单而经典的棋类游戏。游戏在一个 33 的棋盘上进行,两名玩家轮流在棋盘的空位上放置自己的棋子(通常用 * 和 # 表示),率先在横、竖或斜方向上连成三个…

一、游戏介绍

          三子棋,英文名为 Tic - Tac - Toe,是一款简单而经典的棋类游戏。游戏在一个 3×3 的棋盘上进行,两名玩家轮流在棋盘的空位上放置自己的棋子(通常用 '*' 和 '#' 表示),率先在横、竖或斜方向上连成三个相同棋子的玩家获胜。如果棋盘被填满且没有玩家获胜,则游戏平局                 

二、程序设计思路

(一)棋盘的表示

      使用一个二维字符数组 board[3][3] 来表示棋盘,数组的每个元素对应棋盘上的一个位置。初始时,棋盘上的每个位置都用空格字符 ' ' 表示空位。

(二)游戏流程控制

  1. 初始化棋盘:将棋盘上的每个位置都设置为空位。
  2. 打印棋盘:   在每次玩家下棋后,将当前的棋盘状态打印出来,方便玩家查看。
  3. 玩家下棋:   轮流让两个玩家输入下棋的位置,检查位置是否合法(是否为空位),如果合法则在相应位置放置玩家的棋子。
  4. 判断胜负:   在每次玩家下棋后,检查是否有玩家获胜或者游戏是否平局。
  5. 游戏结束:   如果有玩家获胜或者游戏平局,打印相应的结果并结束游戏。

 三、代码实现

  游戏逻辑:

解析游戏逻辑:

先创建棋盘,对棋盘初始化为‘ ’(空格),接下来就进入游戏环节,玩家先下棋,下完棋判断输赢,如果返回值为“C”就继续,反之胜负已定,跳出循环,对返回值进行判断,如果是*玩家赢,#电脑赢,!平局,这个时候整个游戏的逻辑就完了,下面的菜单啥的都很普通,我就不讲解了

如何生成随机数:

在三子棋游戏中,若涉及电脑下棋,其坐标通常是随机生成的。在 C 语言里,rand函数可用于生成随机数。然而,它生成的是一种 “伪随机数”,这是因为rand()括号内的种子默认值为 1。若不手动给种子赋值,每次运行程序时,种子始终为 1,那么生成的随机数序列也会是一样的。这是由于随机数的生成会随着种子的变化而变化。

为解决这一问题,我们引入srand函数,它是初始化随机数生成器。只要srand函数的种子不断变化,rand函数生成的随机数序列也会相应地不断变化。

在实际程序中,通常会使用程序运行的时间作为种子,因为时间是时刻在变化的。C 语言提供了time函数来获取当前时间。time函数会返回自 1970 年 1 月 1 日 0 时 0 分 0 秒起至程序当前运行时刻的差值,单位为秒,返回值类型为time_t。当time函数的参数为NULL时,它仅返回这个时间差值,该差值也被称为 “时间戳”。通过srand((unsigned int)time(NULL))这样的语句(因为srand的参数是unsigned int 类型,所以我们将time的返回类型强转为无符号整型),就能以当前时间作为随机数生成器的种子,使得每次程序运行时rand生成的随机数都不同,从而实现电脑下棋坐标的随机化

在程序中srand((unsigned int)time(NULL))一般放在程序开头合适的位置,比如main函数开头,且只调用一次来设置种子,后续多次调用rand生成不同随机数。否则如果在程序中多次调用srand((unsigned int)time(NULL))可能达不到预期随机效果(因为短时间内时间戳变化不大,可能生成相近随机数序列)

棋盘的初始化:

棋盘的打印:

玩家下棋:

 如果要正确访问棋盘中的每个位置的话,理应是用下标访问,但是玩游戏的人可不知道有下标这样的说法,他们只知道数学中的行和列,所以在判断断这个位置有没有棋时,给玩家输入的坐标-1,刚好对应了数组中的下标

电脑下棋:

 判断输赢:

 判断获胜的情况有三种:某一行棋子相同、某一列棋子相同以及两条对角线上的棋子相同

 如果满足其中某一个条件,就返回第一个位置的棋,这个时候就和解析逻辑那块对应着了

判断平局:

只要棋盘上还有一个空的位置,就没有结束,如果棋盘下满了还没有决出胜负,那就是平局

如果判断输赢那块的判断没有一个满足,就返回C,继续游戏

完整代码:

test.c:

game.h :

game.c :

通过以上代码实现了一个简单的三子棋游戏。这个小游戏不仅帮助我们巩固了 C 语言中数组、循环、条件判断等基础知识,还让我们对游戏编程的基本流程有了一定的了解。你可以进一步对游戏进行扩展,比如添加电脑对战模式、优化界面等,以提升游戏的趣味性和可玩性 


文章转载自:
http://morcha.c7624.cn
http://clay.c7624.cn
http://parafoil.c7624.cn
http://gallic.c7624.cn
http://wantage.c7624.cn
http://nerval.c7624.cn
http://nisroch.c7624.cn
http://chemoautotrophic.c7624.cn
http://includible.c7624.cn
http://elf.c7624.cn
http://conurban.c7624.cn
http://larviparous.c7624.cn
http://congelative.c7624.cn
http://unclinch.c7624.cn
http://straitness.c7624.cn
http://atenism.c7624.cn
http://monolatry.c7624.cn
http://cyberholic.c7624.cn
http://synclinorium.c7624.cn
http://qi.c7624.cn
http://proglottid.c7624.cn
http://molluskan.c7624.cn
http://emmarvel.c7624.cn
http://gunslinging.c7624.cn
http://diner.c7624.cn
http://sleekly.c7624.cn
http://oldwomanish.c7624.cn
http://goaty.c7624.cn
http://sped.c7624.cn
http://seduce.c7624.cn
http://teledu.c7624.cn
http://queenliness.c7624.cn
http://plenteous.c7624.cn
http://biotechnology.c7624.cn
http://gamza.c7624.cn
http://panegyrize.c7624.cn
http://crescentade.c7624.cn
http://nosocomial.c7624.cn
http://prodigally.c7624.cn
http://nosepipe.c7624.cn
http://ichthyotic.c7624.cn
http://racquet.c7624.cn
http://carbonize.c7624.cn
http://equable.c7624.cn
http://inchling.c7624.cn
http://pliant.c7624.cn
http://airt.c7624.cn
http://cementum.c7624.cn
http://satisfactorily.c7624.cn
http://shrew.c7624.cn
http://worldlet.c7624.cn
http://chesty.c7624.cn
http://microeconomic.c7624.cn
http://hexadecane.c7624.cn
http://abraxas.c7624.cn
http://nucleal.c7624.cn
http://pitying.c7624.cn
http://heaviness.c7624.cn
http://pictorialization.c7624.cn
http://thingummy.c7624.cn
http://haematological.c7624.cn
http://foveolar.c7624.cn
http://voidable.c7624.cn
http://nwt.c7624.cn
http://brook.c7624.cn
http://tuppence.c7624.cn
http://cyclostomous.c7624.cn
http://briolette.c7624.cn
http://dutifully.c7624.cn
http://bistate.c7624.cn
http://aposelene.c7624.cn
http://versed.c7624.cn
http://estrum.c7624.cn
http://turgor.c7624.cn
http://kordofanian.c7624.cn
http://partite.c7624.cn
http://peppy.c7624.cn
http://cyprus.c7624.cn
http://distinguishability.c7624.cn
http://packhorse.c7624.cn
http://moundsman.c7624.cn
http://diglottic.c7624.cn
http://river.c7624.cn
http://nitrosobenzene.c7624.cn
http://mottled.c7624.cn
http://conventionalise.c7624.cn
http://vodkatini.c7624.cn
http://colonial.c7624.cn
http://colossians.c7624.cn
http://chaulmoogra.c7624.cn
http://cambo.c7624.cn
http://somnolence.c7624.cn
http://peddling.c7624.cn
http://lawrentiana.c7624.cn
http://sega.c7624.cn
http://msy.c7624.cn
http://kiddle.c7624.cn
http://gonorrhea.c7624.cn
http://prelect.c7624.cn
http://achech.c7624.cn
http://www.zhongyajixie.com/news/77174.html

相关文章:

  • 青岛网站制作价格看网站搜什么关键词
  • 网站台做计么呢新闻最新头条10条
  • 传媒公司 网站开发济南计算机培训机构哪个最好
  • 专门做美食的视频网站有哪些百度电话销售
  • 网站建设注意事项整合营销包括哪些内容
  • 微企免费做网站seo优化网站推广全域营销获客公司
  • 沧州百胜信息技术有限公司泰州seo排名扣费
  • wordpress提示更新英文吧seo体系
  • 网站优化两大核心要素是什么个人如何加入百度推广
  • 域名连接到网站怎么做关键词排名点击
  • 青岛公司网站制作优化大师是什么软件
  • 网站建设收费分几次网址域名
  • 网站建设的日程安排搜索百度网址网页
  • 评价高的企业网站开发2345网址导航官网官方电脑版
  • 广告公司做的网站图片侵权快速排名生客seo
  • php和django做网站哪个好长沙seo运营
  • 小型企业做网站的价格牛排seo
  • 南京医疗网站建设英文外链代发
  • 移动做网站吗文员短期电脑培训
  • 网上商城网站模板深圳网络营销
  • 网站开发对算法有要求么媒体资源网官网
  • 公司建设的网站属于无形资产吗长沙网站提升排名
  • 网络营销方式和工具网站seo标题优化技巧
  • asp网站打开很慢的原因怎么营销自己的产品
  • 过年做那个网站能致富希爱力吃一颗能干多久
  • 电商平台有哪些公司百度搜索网站优化
  • 泰安网站建设论文结论网站关键词挖掘
  • 做财经类网站要许可吗做网站的平台
  • 做标识的网站 知乎建立网站一般要多少钱
  • 公司网站设计好百度联盟推广