五子棋游戏软件工程课程设计
               
软件工程设计
    业:                   
    级:                   
    名:                   
    号:                   
指导老师:                   
                                 
目录
第一章 需求分析    1
1.1 总体分析    1
1.2 初始化    1
1.3 主循环控制模块    1
1.4 玩家下子    1
1.5 盘面分析填写棋型表    2
1.6 对方下子    2
1.7 胜负判断    2
第二章 功能描述    3
2.1 功能模块图    3
2.2 功能说明    3
第三章 系统设计    4
3.1 流程图    4
3.2 流程图说明    5
第四章 运行结果    6
第五章 总结    7
附录一 源代码    8

五子棋游戏
第一章 软件工程专业课程需求分析
1.1 总体分析
软件需求分析是软件开发周期的第一个阶段,也是关系到软件开发成败的关键一步。对于任何一个软件而言,需求分析工作都是至关重要的一步。只有通过软件需求分析,才能把软件的功能和性能由总体的概念性描述转化为具体的规格说明,进而建立软件开发的基础。实践
表明,需求分析工作进行得好坏,在很大程度上决定了软件开发的成败。
软件需求分析的任务是:让用户和开发者共同明确将要开发的是一个什么样的软件。具体而言,就是通过对问题及其环境的理解、分析和综合,建立逻辑模型,完成新软件的逻辑方案设计。
基于本游戏,首先得为整个棋盘建立一张表格用以记录棋子信息,我们使用一个15*15的二维数组Table[15][15](15*15是五子棋棋盘的大小),数组的每一个元素对应棋盘上的一个交叉点,用‘0’表示空位、‘1’代表己方的子、‘2’代表对方的子;这张表也是今后分析的基础。在此之后还要为两个玩家双方各建立一张棋型表Computer[15][15][4]Player[15][15][4],用来存放棋型数据。
1.2 初始化
首先,建立盘面数组Table[15][15]、对战双方的棋型表Computer[15][15][4]Player[15][15][4]并将它们清零以备使用;然后初始化显示器、键盘、鼠等输入输出设备并在屏幕上画出棋盘(棋盘可以不显示)。
1.3 主循环控制模块
控制下棋顺序,当轮到某方下子时,负责将程序转到相应的模块中去,主要担当一个调度者的角。
1.4 玩家下子
当轮到玩家下时,您通过键盘或鼠标在棋盘上落子,程序会根据该点的位置,在Table[15][15]数组的相应地方记录‘2’,以表明该子是玩家下的。
1.5 盘面分析填写棋型表
您在下五子棋时,一定会先根据棋盘上的情况,出当前最重要的一些点位,如活三冲四等;然后再在其中选择落子点。先来分析己方的棋型,我们从棋盘左上角出发,向右逐行搜索,当遇到一个空白点时,以它为中心向左挨个查,如果遇到己方的子则记录然后继续,如果遇到对方的子、空白点或边界就停止查。左边完成后再向右进行同样的操作;最后把左右两边的记录合并起来,得到的数据就是该点横向上的棋型,然后把棋型的编号填入到Computer[x][y][n]中就行了(xy代表坐标,n=0123分别代表横、竖、左斜、右斜
四个方向)。而其他三个方向的棋型也可用同样的方法得到,当搜索完整张棋盘后,己方棋型表也就填写完毕了。然后再用同样的方法填写对方棋型表。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。