- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
山东现代职业学院
C语言程序设计(论文)
题目: 五子棋游戏
院(系): 电子信息
专业班级: 多媒体技术
学 号: 092454
学生姓名: 李洋
学 号 092454 学生姓名 李洋 专业班级 多媒体技术 程序设计(报告)题目 五子棋游戏 程序设计(报告)任务
程序设计的任务与要求:
(1)掌握C语言编程的基础知识。
(2)较熟练地编写C语言应用程序。
(3)了解C语言的常用标准函数、编程技巧、异常处理。
(5)联系已学过的内容,巩固所学的理论,增强独立工作能力。
(6)通过设计主要使学生有一个独立编写程序的过程,对理论学习及动手能力都有一个很大的提高。
(7)通过本次设计,进一步培养学生热爱专业的思想,同时对本专业综合素质的提高起一个积极的推动作用。
课程设计过程中,要严格遵守实践环节的时间安排,听从指导教师的指导。正确地完成上述内容,记录实习日记,规范完整地撰写出课程设计报告。
指导教师评语及成绩
成绩: 指导教师签字:
2011年 月 日
目 录
第1章 课程设计的目的与要求 1
1.1 课程设计目的 1
1.2 课程设计的实验环境 1
1.3 课程设计的预备知识 1
1.4 课程设计要求 1
第2章 课程设计内容 2
2.1程序功能介绍 2
2.2程序整体设计说明 2
2.2.1设计思路 2
2.2.2数据结构设计及用法说明 3
2.2.3程序结构(流程图) 3
2.2.4各模块的功能及程序说明 5
2.2.5程序结果 6
2.3程序源代码及注释 6
第3章 课程设计总结 23
参考资料 24
第1章 课程设计的目的与要求
1.1 课程设计目的
本课程设计是计算机科学与技术专业重要的实践性环节之一,是在学生学习完《程序设计语言(C)》课程后进行的一次全面的综合练习。本课程设计的目的和任务:1. 巩固和加深学生对C语言课程的基本知识的理解和掌握2. 掌握C语言编程和程序调试的基本技能3. 利用C语言进行基本的软件设计4. 掌握书写程序设计说明文档的能力5. 提高运用C语言解决实际问题的能力1.2 课程设计的实验环境
硬件要求能运行Windows 2000/XP操作系统的微机系统。C语言
1.3 课程设计的预备知识
熟悉C语言及C语言开发工具。
1.4 课程设计要求
1. 分析课程设计题目的要求2. 写出详细设计说明3. 编写程序代码,调试程序使其能正确运行4. 设计完成的软件要便于操作和使用. 设计完成后提交课程设计报告第2章 课程设计内容
2.1程序功能介绍
本程序是在一个方阵上通过两人对弈的形式,依次在棋盘上放置两种颜色的棋子,哪一方先让五个棋子形成一条直线(包括横、竖、对角线3个方向),即为获胜,游戏初始运行界面应为如下: 游戏操作规则: 1、 按左右上下方向键移动棋子 2、 按空格键确定落棋子 3、 禁止在棋盘外按空格整体设计说明2.2.1设计思路
1) 黑先、白后,从天元开始相互顺序落子。
2) 白棋第一手应在天元为界自己一侧布子,之后双方可任意行子。
3) 最先在棋盘横向、竖向、斜向形成连续的相同色五个棋子的一方为胜。
4) 黑棋禁手判负、白棋无禁手。黑棋禁手包括“三、三” “四、四” “长连”。黑方只能“四、三”胜。
5) 如分不出胜负,则定为平局。
6) 对局中中途退场均判为负。
7) 五连与禁手同时形成,先五为胜。
1) 长连:在一条直线或斜线上,连续下成五个以上的棋型
2) 活三:在一条直线或斜线上,由三个子构成的,必须防守否则将成为“活四”导致速胜的棋型。三只有下面两种棋型结构:
3) 活四:指在一条直线或斜线上,由连续的四个字所构成的,无论对方怎样防守,只要再走一手棋将必定成为五连的棋型:
4) 四:在一条直线或斜线上,由四个同色子构成的,必须防守否则下一步立刻成为“五连”导致速胜的棋型。活四也是四之一。
2.2.2数据结构设计及用法说明
int gPlayOrder; /*指示当前行棋方 */
struct point gCursor; /*光标在棋盘上的位置 */
char gChessBoard[19][19];/*用于记录棋盘上各点的状态*/
break/*是落子键*/
else /*交换行棋方*/
2.2.3程序结构(流程图)
main()函数流程图
Jud
文档评论(0)