ImageVerifierCode 换一换
格式:DOC , 页数:15 ,大小:601.75KB ,
资源ID:837144      下载积分:20 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 微信支付   
验证码:   换一换

加入VIP,免费下载资源
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.wodocx.com/d-837144.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言程序设计之五子棋.doc)为本站会员(精***)主动上传,沃文网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知沃文网(发送邮件至2622162128@qq.com或直接QQ联系客服),我们立即给予删除!

C语言程序设计之五子棋.doc

1、 C语言程序设计之五子棋摘要:本程序是一种两人对弈的纯策略型棋类游戏,规则简单,变化多端,非常富有趣味性和消遣性。主要应用了Visual C+编程来完成这个游戏的设计的。本文主要介绍了本游戏的开发环境Microsoft Visual C+6.0,使用当前优秀的开发工具VC+编程基于MFC的基本对话框,编写了一个五子棋的游戏软件。包含了五子棋程序的棋盘初始化、游戏规则、胜负判断方法。关键词:五子棋游戏应用程序、初始化、规则、图形函数、判断1. 问题描述在Visual C+ 6.0编译器的基础上,基于MFC的基本对话框,编写一个五子棋的游戏软件。该游戏应该符合以下要求:1.1游戏模式:人先下棋,电

2、脑在人下子后会随后下棋。1.2人机对弈:完成人和计算机的对弈,用黑色棋子表示人,白色棋子表示电脑,电脑要具有一定的人工智能,能够可以与人对弈一段时间。1.3棋盘:要求棋盘绘制美观耐看。1.4判断输赢:当一方有五个相邻的棋子连成一条线时,计算机能判定输赢,并能结束本次游戏并重新开始。1.5存储功能:要求五子棋有存储功能,可以将进行中的游戏存储在棋盘上,也可以读取已存盘的游戏。1.6弹窗功能:要求制作按钮,实现弹框功能,可以弹出指导老师与小组成员的信息。2. 详细设计2.1总体设计程序流程图如下图所示:2.1.1 新建工程,选MFC AppWizard(exe),添上工程名,确定。2.1.2选基本

3、对话框,完成,确定2.1.3插入位图我们选择的方式从网上搜寻一些图片,然后直接贴图。先插入位图(BMP格式)。位图插入后会自动赋予ID值,我们将其修改一下:分别修改为BLACK BOARD WHITE CLEAR2.1.4添加DRAW函数添加成员函数Draw:然后添加所编的程序代码。2.1.5在OnPaint函数中加入代码画图在OnPaint函数中加入以下代码:CDC *pDC;pDC=GetDC();Draw(0,0,IDB_CLEAR,pDC);Draw(13,13,IDB_BOARD,pDC);for(int i=0;i15;i+)for(int j=0;jMoveWindow(10,5

4、15,55,24);GetDlgItem(IDC_OPEN)-MoveWindow(70,515,55,24);GetDlgItem(IDC_teacher)-MoveWindow(345,515,55,24);GetDlgItem(IDC_students)-MoveWindow(405,515,55,24);2.1.12更改icon图标2.2数据结构设计开始游戏人开始下棋电脑下棋输赢能否确定输赢能否确定电脑下棋开始游戏人开始下棋N我赢了,结束战斗谁获胜Y结束游戏电脑胜利,结束战斗电脑人2.3函数功能描述OnInitDialog():通过这个函数,我们定义了窗口的大小、窗口所处的位置、保存按

5、钮的放置、读档按钮的放置、指导老师按钮的放置以及小组成员按钮的放置。OnPaint():通过这个函数,我们在窗口上画出了棋盘。Draw(int x, int y, UINT bitmap, CDC *pDC):通过这个函数,我们可以画出各种图片。OnLButtonUp(UINT nFlags, CPoint point):通过这个函数,我们可以通过鼠标控制在窗口上下子。iswin(int i, int j):通过这个函数,我们可以判断胜负。search(int i, int j, int m, int n):通过这个函数,我们可以判断棋子周围的情况。AIplay():通过这个函数,我们设计了一

6、个人工智能来与人对弈。searchvalue(int &best_i, int &best_j, int color):寻找棋子的有利位置getscore(int i, int j, int color):计算这个函数位置的分数OnSave():通过这个函数,我们实现了存储的功能。OnOpen():通过这个函数,我们实现了打开存储的功能。Onteacher():通过这个函数,我们实现了”指导老师“的弹出窗口。Onstudents():通过这个函数,我们实现了”小组成员“的弹出窗口。3. 总结本作品是一个简单的双人五子棋游戏,运行程序后直接进入棋盘界面,最终会判断出输赢。主要设计内容概括如下:3

7、.1在初期,本小组认真的对五子棋进行了研究分析,参考了可供参考的资料和程序,确定了运行步骤和流程,并分配了各自的任务。要求每位组员细致了解部分MFC函数,以便实现五子棋游戏的编译。如定义好窗口大小及所处位置、保存按钮的放置、读档按钮的放置、指导老师按钮的放置以及小组成员按钮的放置等。通过各种函数实现画出棋盘、用鼠标控制落子、判断棋子周围的情况、判断胜负、实现存储、打开存储等功能。搜寻图片,找到适合用于五子棋游戏中棋盘、棋子的图片。分配任务给各个小组成员,分别编写五子棋程序所需要的函数。3.2期间程序需要添加很多成员函数及消息处理函数,如Draw函数、OnPaint函数、iswn函数等。3.3运

8、行五子棋并进行测试,每位组员负责的程序部分写好之后,再将大家的程序汇总,但发现有些人的模块编写有误,导致程序无法运行,因此大家在一起讨论与修改并回去思考。经过多次测试并改进程序部分函数,程序已经可以运行了。考虑到五子棋游戏比较简单,就没有设置悔棋环节。3.3在做C语言程序设计之前,编辑游戏在组里的每个成员看来,都是遥不可及的。但通过这次设计我明白了并不是如此,只要团队合作也可以搞定,我多学了许多课上没有的知识,比如怎么用C程序画图、写出文本等。通过C语言课程设计,我们对语言这门课程有了更深一步的了解。它是计算机程序设计的重要理论技术基础,在我们电子专业的学习中占据着十分重要的地位。同时也使我们知道,要学好这门课程,仅学习书本上的知识是不够的,还要有较强的实践能力。只要多实践,多编写程序,才能更好的掌握书本上的东西。参考文献:梁栋、李新华等,C语言程序设计,中国电力出版社,2009年2月谭浩强,C程序设计(第二版),清华大学出版社,2005年邓莉,C+程序设计(第四版),清华大学出版社,2010年侯俊杰,深入浅出MFC(第二版),华中科技大学出版社,2001年葛亮,Visual C+从入门到实践,清华大学出版社,200715

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922