对五子棋胜负的一个模拟判断

  在这个模拟中,采用文件来存储棋盘状况。data.txt的内容类似下面这样,0表示未下子,1表示黑子,2表示白子:

  先将文件中的数据读取到一个字符数组中,然后对数组内容进行遍历判断。分横、竖、左右斜、右左斜四种情况判断。若出现一方胜的情况,则将胜负标志变量置为1或者2并跳出判断,最后根据胜负标志变量来输出哪方胜并输出取胜的起始坐标点。源代码如下:

 

  以上方法中使用的是全棋盘判断……接tbo1988同学的意见,可以在某方落子后根据该子坐标判断一横条、一竖条、两斜条就可以了。按这个思路小改一下以后,虽然代码量没怎么减,可是效率上却是大大提高了。

  以下程序流程即用户输入一个坐标,然后函数judgment根据此坐标对棋盘一横条、一竖条、两斜条进行判断,然后返回胜负标志变量。此函数基本上可以直接用于后来将基于MFC的五子棋游戏中。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值