1、 课程设计任务书课程设计任务书 题目: C 语言程序设计:五子棋 年 月 日 1 课程课程设计设计任务书及成绩评定任务书及成绩评定 课程课程设计的任务和具体要求设计的任务和具体要求 1.目的: 1)复习、巩固 C语言的基础知识,进一步加深对 C 语言的理解和掌握; 2)课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际 有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能 力; 3)培养学生在项目开发中团队合作精神、创新意识及能力。 2.要求: 1) 、对系统进行功能模块分析、控制模块分析正确,符合课题要求,实现相应功能;可以加 以其他功
2、能或修饰,使程序更加完善、合理; 2) 、系统设计要实用,编程简练,可用,功能全面 3) 、说明书、流程图要清楚 4) 、记录设计情况(备查,也为编写设计说明书作好准备) ; 5) 、要求采用模块化程序设计方法,及锯齿型书写格式,要求上机调试通过和按设计报告格 式。 指导教师签字: 日期: 2 指导教师评语指导教师评语 成绩: 指导教师签字: 日期: 课程设计课程设计所需软件、硬件等所需软件、硬件等 软件:Microsoft Visual C+6.0 操作系统:WIN xp Rom:256 Cpu:1.6Ghz 课程设计进度计划课程设计进度计划 起至日期起至日期 工作内容工作内容 备注备注 3
3、 5 月 25 日 5 月 26 日 5 月 27 日 进行程序设计需求分析 分析程序代码 撰写课程设计任务书 参考文献、资料索引参考文献、资料索引 序号 文献、资料名称 编著者 出版单位 1 贾宗璞、 许合利, C 语言程序设计, 江苏: 中国矿业大学出版社, 2007.6 2 谭浩强,C 程序设计(第二版),北京:清华大学出版社,2001.1 3 http:/ 4 目 录 摘 要 .1 第 1 章:需求分析 .1 1.1 五子棋背景 1 1.2 程序设计 1 1.2.1 程序需求分析 1 1.2.2 程序流程设计 2 第 2 章:概要设计 .3 2.1.1 各类头文件,变量及宏定义 3 2
4、.1.2 全局变量 3 2.2 图形模块 3 2.3 玩家操作模块 4 2.4 胜负判断模块 4 2.5 玩家计分模块 5 2.6 各模块之间调用关系如下 5 第 3 章:详细设计 .6 3.1 图形模块 6 3.2 玩家操作模块 10 3.3 胜负判断模块 12 3.4 文件操作模块 15 3.5 函数大致调用关系图 18 第 4 章:调试分析 .19 4.1 图形模块 19 4.2 玩家操作模块 20 4.3 胜负判断模块 20 4.4 玩家计分模块 20 第 5 章:用户手册 .21 第 6 章:测试分析 .21 结 论 .22 1 摘摘 要要 五子棋是一种两人对弈的纯策略型棋类游戏,应
5、用 C 语言编写程序可以 在计算机上实现二人对弈五子棋功能。二人对弈五子棋程序由图像生成、光标 移动与落子、 判断胜负和系统帮助等子程序构成; 程序中应用了结构体、 数组、 全局变量、 按键处理和图形编程等元素和语句。 程序通过棋盘和棋子图像生成、 二人移子与落子和判断胜负等功能的实现,在计算机上实现了二人五子棋对 弈。 第第 1 1 章:需求分析章:需求分析 1.11.1 五子棋背景五子棋背景 传统五子棋的棋具与围棋相同,棋子分为黑白两色,棋盘为 1515,棋 子放置于棋盘线交叉点上。两人对局,各执一色,轮流下一子,先将横、竖或 斜线的 5 个或 5 个以上同色棋子连成不间断的一排者为胜。
6、因为传统五子棋在落子后不能移动或拿掉, 所以也可以用纸和笔来进行游 戏。 1.21.2 程序设计程序设计 本程序设计为人与人对弈,一方执黑棋,一方执白棋,轮流走棋,每方都 试图在游戏结束前让自己的棋子五子相连,首先实现五子相连的一方获胜。程 序执行过程中,要求棋盘、棋子时时可见,并且人可以通过按键盘按键移动光 标,摆放棋子。 1.2.1 1.2.1 程序需求分析程序需求分析 根据功能需求,将程序分为图形显示、玩家控制、胜负判断和玩家计分四 个模块,以下分析各模块的需求。 图形显示模块:程序开始运行时,给出欢迎及帮助界面;游戏开始后要求 生成 1919 的棋盘图像,并在棋盘上方提示当前落子方棋子颜色,游戏进行 过程中,要求实时显示棋盘上已落下的棋子;分出胜负后,要求给出游戏结束 画面。 玩家控制模块:程序开始时,需玩家确定而后开始游戏;游戏过程中,两 个玩家通过不同的按键移动光标,选择落子;游戏结束时,有玩家选择是否开 2 始新棋局。