五子棋课程设计实验报告
- 格式:docx
- 大小:351.85 KB
- 文档页数:24
C语言程序设计报告题目:五子棋
班级:电气Q1041班
人数:3人
小组成员:周啸天、万广富、黄山奇指导老师:桂超
目录
第一章课程设计的目的和要求.........................................
1.1课程设计的目的................................................
1.2课程设计的要求................................................
1.3课程设计的实验环境........................................... 第二章功能描述........................................................ 第三章总体设计........................................................
3.1功能模块设计..................................................
3.1.1任务执行流程图..........................................
3.2数据结构设计...................................................
3.2.1定义结构体...............................................
322定义数组...................................................
3.2.3全局变量.................................................
3.3函数功能描述................................................... 第四章程序实现........................................................
4.1源码分析.......................................................
4.2运行结果及界面介绍............................................ 第五章后记............................................................
第一章课程设计的目的和要求
1.1 课程设计的目的
1. 加深对C语言数据类型,运算,语句结构及其程序设计的基本方法理解和掌握;
2. 熟练掌握流程图的绘制、程序设计文档的书写;
3. 通过编写一个完整的程序,一方面可以检查我们这学期的学习情况,为以后的学习打下坚实的基础;
4. 熟悉C语言游戏编程,掌握五子棋游戏开发的基本原理,从而为以后的程序开发奠定基础。
1.2 课程设计的要求
1 、编写程序代码,调试所写程序使其能够正确运行;
2、能进行基本的五子棋操作,有图形界面,能够用键盘操作;
3、能够实现悔棋、存档和读档等附加功能
1.3 课程设计的实验环境
该课程设计在设计与实验过程中需要在windows XP系统/windows 2000以上系统中进行,程序设计要求在visual C++6.0 平台中进行,完成代码的编写、编译、调试、测试等工作。本游戏对计算机硬件和操作系统要求极低,所以在这里只是把自己的电脑硬件参数和系统参数列下:
硬件:Cpu:2.1GHZ 内存,2GB 硬盘:320GB 操作系统:windows xp
软件环境:安装VC++6.0
第二章功能描述
本程序用C语言实现了五子棋游戏,能进行基本的五子棋操作。程序能实现界面的初始化功能、下棋功能、人机智能对战功能、胜负判断功能、悔棋功能、读档及存档功能,通过键盘操作控制下棋。
(1)显示欢迎界面。在游戏开始时出现一个欢迎的界面同时介绍了游戏的规则;
(2)初始化功能。程序初始化屏幕和棋盘,默认玩家先行。
(3)下棋操作。利用W、S、A、D及空格键实现下棋操作,在下棋过程中能随时按ESC键退出。
(4)人机智能对战功能。电脑根据玩家的下棋对棋盘进行智能分析,然后下棋,实现人机对弈。
(5)悔棋功能。玩家可以有三次悔棋机会。
(6)胜负判断功能。程序能对下棋的结果进行判断,分出胜负。并显示获胜方。
(7)读档、存档功能。游戏中途退出会提示是否存档,如果存档,贝U下次开始的时候会提示是否读档继续上次的游戏。
是
第三章总体设计3.1功能模块设计
3.1.1任务执行流程图
显示电脑 获胜信息
3.1.2下棋函数流程图
开始
定义整形数组bacf]用来记录 定义整形n = 3;训来记录悔棋次数
3.3函数功能描述
1、显示欢迎信息 bool welcome 。;
2、初始化棋盘 void InitBoard();
3、输出棋盘 void chessboard();
4、判断胜负 int Win(char c);
5、下棋 void play(point &r);
6、显示获胜 void showsusscced(char c);
获取key 值 疋
key=SP ACE ?
board[i][j]
3.2.1赋定义'吉构
体
是
3.2数据结构设计
Key=E SC ?
将棋盘上每个点的左边定义为一个结构体;
获胜?
}poi nt;
显示获胜信息
下一步超 出边界?
交换行棋方 —8-2.2定义数组
画棋子,显 示运动轨迹
board[i][
定义数组board[15][15]表示棋盘,用来记录棋盘上每个棋子的状态;
3.2.3全局变量
向键值指示的 方向移动一步
前两步双方下棋的状态,便于后面进行悔棋操作