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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(c语言课程设计一担挑游戏.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

c语言课程设计一担挑游戏.docx

1、c语言课程设计一担挑游戏中 国 地 质 大 学本科生课程论文封面2011年12月课程设计评语对课程论文的评语:平时成绩:课程论文成绩:总 成 绩:评阅人签名:注:1、无评阅人签名成绩无效;2、必须用钢笔或圆珠笔批阅,用铅笔阅卷无效;3、如有平时成绩,必须在上面评分表中标出,并计算入总成绩。一 课程论文题目 :一担挑游戏二程序设计思路1 题目要求:1.计算机移动是,使用相应函数扫描棋盘矩阵,寻找未占单元;发现空单元后,置为“0”;为发现时,报告平局退出。2.轮到对弈者时,使用相应函数要求对弈者回答想把“X”放在哪里。3.谁先三点连成一线了,则报告谁胜出。4.计算机与对弈者每下一步棋都会使相应位置

2、变为“0”和“X”,便于在屏上显示矩阵。2 需求分析根据题目要求,由于程序要求计算机模拟棋盘对练,所以系统涉及到了二维数组的引用:同时,在对弈期间,计算机移动时系统要不停得扫描棋盘矩阵来寻找未占单元,所以程序提供了显示,浏览,查找,排序等操作:另外系统还能提供键盘式的选择菜单来实现功能的选择。三功能模块图四数据结构设计用二维数组构筑了棋盘,用间隔线分割棋盘后,就可以按自己意愿和计算机对弈了,此后每一步计算机都会调用相应的函数扫描棋盘。 Char qi pan33;Void init_qipan(void);int i,j;for(i=0;i3;i+)for(j=0:j3;j+)qipanij=

3、 五算法设计1.主函数:较为简单,只有数据输入,功能处理等函数调用。流程图2各功能模块设计(1)棋盘输入用二维数组构筑了棋盘,用间隔线分割棋盘后,就可以按自己意愿和计算机对弈了,此后每一步计算机都会调用相应的函数扫描棋盘。Char qi pan33;Void init_qipan(void);int i,j;for(i=0;i3;i+)for(j=0:j3;j+)qipanij= (2)对弈模块模块是提供用户模拟棋盘按用户自己的思想来下棋,这期间涉及两种情况1用户输入错误,2棋子位置错误。/*用户方面对弈*/void player_move(void) int x,y; printf(Its

4、your turn,please:); scanf(%d%*c%d,&x,&y); x-;y-; if(qipanxy!= ) printf(Error, try again.n); player_move(); else qipanxy=X; /*计算机方面对弈*/void computer_move(void) int i,j; for(i=0;i3;i+) for(j=0;j3;j+) if(qipanij= ) break; if(qipanij= ) break; if(i*j=9) printf(pingjun); exit(0); else qipanij=0; (3)显现模块显

5、示模块【需求分析】 该模块的作用是显示对弈结果。即要求计算机调用相关的函数多次扫描棋盘,谁的棋优先连成一线了,计算机就判定谁胜出:这期间有三种情况;1.用户是胜者,2.计算机胜出,3.二者打成平局.【程序】void disp(void) int t; for(t=0;t3;t+) printf(%c|%c|%c,qipant0,qipant1,qipant2); if(t!=2) printf(n-|-|-n); printf(n); char check(void) int i; for(i=0;i3;i+) if(qipani0=qipani1&qipani0=qipani2) retur

6、n qipani0; for(i=0;i3;i+) if(qipan0i=qipan1i&qipan0i=qipan2i) return qipan0i;for(i=0;i3;i+) if(qipan00=qipan11&qipan00=qipan22) return qipan00; for(i=0;i3;i+) if(qipan02=qipan11&qipan11=qipan20) return qipan02; return ; 六程序代码#include stdio.h#include stdlib.hvoid init_qipan();void player_move();void

7、computer_move();void disp();char check();int main(void)char done;done= ;init_qipan();dodisp();player_move();done=check();if(done!= )break;computer_move();done=check();while(done= );if(done=X)printf(恭喜恭喜 You win!n);elseprintf(You lost! 下次加油n);disp();getchar();return 0;char qipan33;void init_qipan(voi

8、d)int i,j;for(i=0;i3;i+)for(j=0;j3;j+)qipanij= ;XX文库 - 让每个人平等地提升自我XX文库 - 让每个人平等地提升自我void player_move(void)int x,y;printf(Its your turn,please:);scanf(%d%*c%d,&x,&y);x-;y-;if(qipanxy!= )printf(Error, try again.n);player_move();else qipanxy=X;void computer_move(void)int i,j;for(i=0;i3;i+)for(j=0;j3;j+

9、)if(qipanij= )break;if(qipanij= )break;if(i*j=9)printf(pingjun);exit(0);elseqipanij=0;void disp(void)int t;for(t=0;t3;t+)printf(%c|%c|%c ,qipant0,qipant1,qipant2);if(t!=2)printf(n-|-|-n);printf(n);char check(void)int i;for(i=0;i3;i+)if(qipani0=qipani1&qipani0=qipani2)return qipani0;for(i=0;i3;i+)if(

10、qipan0i=qipan1i&qipan0i=qipan2i)return qipan0i;for(i=0;i3;i+)if(qipan00=qipan11&qipan00=qipan22)return qipan00;for(i=0;i3;i+)if(qipan02=qipan11&qipan11=qipan20)return qipan02;return ;七程序运行结果下面是这个程序的运行界面图:界面一即主函数显示:界面二及移动一个棋子后:界面三即移动两个棋子后:界面四即移动了三个棋子后:八编程中遇到的困难及解决方法二维函数遗忘比较严重,再次看了几遍九总结心得及良好建议我们知道,计算机

11、专业的学生与非计算机专业的学生在初次接触计算机程序设计语言课程时,由于上机时间的不足,这门课让我们普遍感觉到这门课内容太多,来不及消化。但我们学院的学生经过这个星期的集中上机强化训练,我们初步掌握了编写中小型程序的编写方法,实习老师的精心指点让我们获益匪浅。这让我们学院的学生的程序设计能力和综合能力上了一个不小的台阶。我们在实习过程中一直坚持了“程序=数据结构+算法”这一思想,但在算法上尤其在操作步骤这方面我们还是存在一些不足,在上机调试时,我还是缺乏查找错误的经验。十致谢我觉得我在此次实践中获得的最大的收获是初步掌握了模块化设计思想并在实际中大量的使用了流程图来表示算法。虽然流程掌握的还不是很熟练,但是如果再有编写程序的机会的话,我想我已经具备了解决问小问题的能力了,至少我会用模块化设计解决大部问题,这全靠老师的大力监督和精彩指点。,非常感谢老师在我们实习期间给予我们的帮助。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1