五子棋人人对战c五子棋课程设计报告

上传人:s9****2 文档编号:489133689 上传时间:2024-02-16 格式:DOC 页数:24 大小:715KB
返回 下载 相关 举报
五子棋人人对战c五子棋课程设计报告_第1页
第1页 / 共24页
五子棋人人对战c五子棋课程设计报告_第2页
第2页 / 共24页
五子棋人人对战c五子棋课程设计报告_第3页
第3页 / 共24页
五子棋人人对战c五子棋课程设计报告_第4页
第4页 / 共24页
五子棋人人对战c五子棋课程设计报告_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《五子棋人人对战c五子棋课程设计报告》由会员分享,可在线阅读,更多相关《五子棋人人对战c五子棋课程设计报告(24页珍藏版)》请在金锄头文库上搜索。

1、VC课程设计报告学 院:理学院专业班级:信息与计算科学 班学生姓名:*学生学号:12345指导教师:#提交时间:2013年 07 月 02 日成 绩:设计题目: 五子棋人人对战 目录第1章 引言4第2章 任务概述42.1问题概述42.1.1问题重述42.1.2设计目的42.2需求分析42.2.1基本要求42.2.2游戏功能介绍4第3章 概要设计43.1功能设计43.2程序结构43.3基本流程4第4章 程序实现44.1主要变量及函数的说明44.1.1主要变量44.1.2主要函数44.2主要功能的实现44.2.1类声明44.2.2棋盘初始化44.2.3开始下棋44.2.4判断下棋合法44.2.4判

2、断输赢4第5章 结果与总结45.1 运行结果截图45.2总结4参考文献:4第1章 引言通过一学期的课程学习,对和Visual2010 C+编程环境有了一定程度的了解。根据课程要求,利用两周时间对所学知识加以巩固学习,用c+编译小游戏,初步了解程序设计与软件实现的思想。该设计通过对“五子棋人人对战”游戏的编写对所学知识复习巩固。程序设计过程中,先对问题进行了全面分析,将“五子棋人人对战”划分成几个子问题后,逐步细化,最终归结成一个个函数的实现。第2章 任务概述2.1问题概述2.1.1问题重述设计一个五子棋,能实现人人对战。(棋盘大小为13X13)2.1.2设计目的独立地利用所学的C+程序设计和V

3、isaul C+6.0编程环境编写程序。2.2需求分析2.2.1基本要求明确五子棋游戏的游戏规则,编写程序实现其功能。2.2.2游戏功能介绍为了更好地实现游戏,首先必须明确“五子棋”的游戏规则。大体的规则可描述如下:(1) 进入主界面后,选择开始游戏。(2) 开始游戏后,一方开始下棋。(3) 再由另一方下棋(4) 判断输赢。(5) 玩家选择结束游戏时,结束游戏。第3章 概要设计3.1功能设计程序主要实现的功能如下所述:(1)启动程序,出现主界面。(2)显示棋盘。(3)选择开始游戏。(4)有一方开始下棋,并判断下棋是否合理。(5)判断输赢。(6)有另一方开始下棋,并判断下棋是否合理。(7)判断输

4、赢。(8)选择是否继续。(9)游戏结束后,退出游戏。3.2程序结构程序的结构如下图所示: 图3.2程序结构 3.3基本流程根据游戏规则及其结构图,画出如下程序基本流程图: 图3.3基本流程第4章 程序实现4.1主要变量及函数的说明4.1.1主要变量char board1414; /棋盘大小int x; /下棋的横坐标int y; /下棋的列坐标int count; /下棋的个数int a; /交换下棋4.1.2主要函数void MainForm(); /显示主菜单void PlayEplain(); /游戏说明void PrintBoard(); / 打印初始棋盘 void InitialBo

5、ard(); /初始化棋盘void PlayChess(); /开始下棋 wuziqi(); /初始化a和count,a是交换下棋,count记录棋盘是否下满int CheckWin(int x,int y); /判断赢棋4.2主要功能的实现4.2.1 类声明class wuziqipublic:void MainForm(); /显示主菜单 void PlayEplain(); /游戏说明void PrintBoard(); /打印初始棋盘 void InitialBoard(); /初始化棋盘void PlayChess(); /开始下棋 wuziqi(); /初始化a和count,a是交

6、换下棋,count记录棋盘是否下满private:int CheckWin(int x,int y); /判断赢棋char board1313; int x; /下棋的横坐标int y; /下棋的列坐标int count; /计数判断是否满int a; /判断谁落子;4.2.2棋盘初始化Void wuziqi:InitialBoard() /初始化棋盘,将所用的位置设置为空格for(i=1;iMXA;i+)for(i=1;iMXA;i+)将所有下棋的格线设为空格Void wuziqi:PrintBoard() /打印棋盘 利用制表符打印棋盘( )4.2.3开始下棋void PlayChess(

7、); /开始下棋由a 的值决定下棋方If(a=0)一方下棋Else另一方下棋用坐标决定下棋位置4.2.4判断下棋合法如果输入是否越界 如果boardxy= 空格就可以下棋 boardxy 设为 如果boardxy是否已经有棋子 输出 输入错误,此位置已经有棋子了,请重新输入!endl; continue;返回去继续输入。 如果输入是否越界 cout 输入位置超出范围,请重新输入!endl;PrintBoard();打印棋盘返回重新输入4.2.5判断输赢int CheckWin(int x,int y); /判断赢棋当一方有五个棋子连成线时赢,用-1和1判断输赢,当棋盘满是为平局。 第5章 结果

8、与总结5.1 运行结果截图1.启动画面图5-1启动画面2.游戏说明图5.2游戏说明 3.退出游戏图5.3退出游戏4进入游戏图5-4 进入游戏5输入越界 图5-5输入超出范围6。已有棋子 图5-6已有棋子7游戏进行图5-7 游戏进行8.判断输赢图5-8 判断输赢5.2总结编辑小游戏这在以前我都以为是遥不可及,但现在通过这次五子棋的设计我明白了,并不是如此,通过课程设计,我们对C+程序设计这门课程有了更深一步的了解。它是计算机程序设计的重要技术。同时也使我知道,要学好这门课程,仅学习书本上的知识是不够的,还要有较强的实践能力。因为我们学习知识就是为了实践。而只有多实践,多编写程序,才能更好的理解与

9、掌握书本上的东西。另外,在课程设计期间,让自己的思维变得活跃,也会看懂,学明白程序问题,总之,受益匪浅。参考文献:C+程序设计(第8版)(美)Walter Savitch 清华大学出版社附录:#include#include /setw(3)using namespace std;const int MAX=13;class wuziqipublic:void MainForm(); /显示主菜单 void PlayEplain(); /游戏说明void PrintBoard(); /打印初始棋盘 void InitialBoard(); /初始化棋盘void PlayChess(); /开始下棋 wuziqi(); /初始化a和count,a是交换下棋,count记录棋盘是否下满private:int CheckWin(int x,int y); /判断赢棋char board1313; int x; /下棋的横坐标int y; /下棋的列坐标int count; /计数判断是否满int a; /判断谁落子;/wuziqi:wuziqi():a(0) /将a初始化为0/

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号