五子棋程序设计说明书

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

中北大学

程序设计

课程设计说明书

学生姓名:学号:

学院:信息与通信工程学院

专业:光电信息工程

题目:五子棋

指导教师:职称:

2012 年 01月 06 日

(纪念我已经逝去的大学生活)

院:信息与通信工程学院

专业:光电信息工程

学生姓名:学号:

课程设计题目:五子棋

起迄日期:2011年12月 24日~2012年1月6日

课程设计地点: 111420

指导教师:

系主任:

下达任务书日期: 2011 年12 月25日

课程设计任务书

课程设计任务书

目录

1、课程设计的背景及意义 (06)

2、设计的基本原理 (06)

3、设计的基本过程 (08)

4、设计的结果 (10)

5、总结和结论 (11)

1.设计背景及意义

我们的五子棋程序是在Visual C++ 环境下运行的。

Visual C++

Microsoft Visual C++(简称Visual C++、MSVC、VC++或VC)微软公司的C++开发工具,具有集成开发环境,可提供编辑C语言,C++以及C++/CLI等编程语言。VC++整合了便利的除错工具,特别是整合了微软视窗程式设计(Windows API)、三维动画DirectX API,Microsoft .NET框架。目前最新的版本是Microsoft Visual C++ 2010。Visual C++ 集成了,于1998发行。发行至今一直被广泛地用于大大小小的项目开发。

五子棋是一种两人对弈的纯策略型棋类游戏,是起源于中国古代的传统黑白棋种之一。我们通过对《C语言》以及对《大学计算机基础》的初步学习后,本学期末进行了课程程序设计,设计课题为“五子棋”。我们小组由6人组成,通过分工与合作并在赵老师的耐心指导下共同完成了此程序设计。

2.设计的基本原理

问题描述

连珠(五子棋)是有两个人在一盘棋上进行对抗的竞技运动。在对局开始时,先由用户选择哪方先开局,先开局一方将一枚棋子落在一点上,然后由另一方在对方棋周围的交叉点上落子,如此轮流落子,直到某一方首先在棋盘的直线、横线或斜线上形成连续的五子则该方就算获胜。此时,算法结束。

需求分析

(1)输出棋盘界面

(2)要求玩家选择棋子

(3)玩家轮流下棋

(4)判断键盘输入哪个键按规则执行操作

(5)判断谁先落棋

(6)判断赢家

(7)输出结果界面

流程图

3设计的基本过程

char b[40][40];

void show() ,再接下来的双for是为塑形:限定行间距为10

时同理,用判断语句来塑造“嘴”,最后用双for语句来输出图形。4设计结果

玩家获胜显示界面截图

5总结与结论

1课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.回顾起此次课程程序设计,至今我仍感慨颇多,从选题到定稿,从理论到实践,在整整两星期的日子里,学到很多很多的的东西,不仅巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,才能真正提高自己的实际动手能力和独立思考的能力。在设计的过程中难免会遇到过各种各样的问题,同时在设计的过程中也发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这

次课程设计之后,把以前所学过的知识重新温故。

2这次课程设计顺利完成了,在设计中遇到了很多编程问题,最后在赵宇老师的辛勤指导下,终于游逆而解。同时,在赵宇老师的身上我学得到很多实用的知识,我表示感谢!同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢!

附录

程序源代码:

#include<>

#include<>

char a[65][65];

char b[40][40];

void show() //输出获胜图像//

{

int i=0,j=0; //i为横坐标变量,j为纵坐标变量// for(i=0;i<40;i++) //对图像数组赋初值//

for(j=0;j<40;j++)

{b[i][j]=46;}

for(i=0;i<40;i++) //对图像数组特定点赋值// for(j=0;j<40;j++)

{

if(i>10&&i<16)

{if(j>10&&j<16||j>25&&j<31)

b[i][j]='O';}

else

{

if(i==21)

{if(j>=6&&j<=35)

b[i][j]='O';}

else

{

if(i==22)

{if(j>=7&&j<=34)

b[i][j]='O';}

else

{

if(i==23)

{if(j>=8&&j<=33)

b[i][j]='O';}

else

{

if(i==24)

{if(j>=9&&j<=31)

b[i][j]='O';}

else

{

if(i==25)

相关文档
最新文档