骑士飞行棋实训报告

上传人:泽*** 文档编号:73557350 上传时间:2022-04-11 格式:DOC 页数:14 大小:181.50KB
收藏 版权申诉 举报 下载
骑士飞行棋实训报告_第1页
第1页 / 共14页
骑士飞行棋实训报告_第2页
第2页 / 共14页
骑士飞行棋实训报告_第3页
第3页 / 共14页
资源描述:

《骑士飞行棋实训报告》由会员分享,可在线阅读,更多相关《骑士飞行棋实训报告(14页珍藏版)》请在装配图网上搜索。

1、山东理工大学计算机学院实训报告 DOS界面开发基础实训班 级姓名学号指导教师二一二年七月五日实训任务书及成绩评定课题名称骑士飞行棋、题目的目的和要求:1、设计目的本实训是实践性教学环节之一,旨在锻炼学生的实践操作能力和综合应用能力,希望通过案例实践,帮助学生掌握DOS界面的开发和应用,具备熟练使用C 语言开发界面、感受游戏开发过程等。2. 要求学生掌握:( 1)、 C语言的规范、结构和标记。( 2)、数组、链表的定义和使用。( 3)、 C 语言的程序设计基础、面向对象编程、操作、事件处理和特效,感受游戏的开发过程等( 4)、综合应用各种前台技术开发DOS页面。2、设计题目要求:第一部分游戏端首

2、页( 1)角色的分配及及游戏规则:游戏规则和传统的飞行棋一样,支持两人对战采用 100 格小型游戏棋盘游戏规则:对战双方轮流掷骰子控制自己的骑兵前进或后退,在游戏棋盘上设置有关卡普通地雷暂停时空隧道幸运轮盘(提供两种运气:交换位置和轰炸)棋盘上的关卡只在骑兵第一次移动遇到时有效( 2)棋盘示例:第二部分:游戏过程( 1)地图显示思路:将对战地图划分成 4 个部分分别显示奇数行:顺序输出地图数组中代号对应图像右竖行:先输出空格,再输出数组中代号对应图像偶数行:逆序输出地图数组中代号对应图像( 2)游戏进行中的界面第三部分:游戏结束,玩家胜负已分、设计进度及完成情况日期内容7.1分析所给题目,初步

3、划分侧重点,并初步制定流程7.2对所给题目进行详细的研究并细读有关资料7.3做出所给题目,讨论研究并调试检查错误,7.4对所给题目进行综合考虑,并进行再次修改7.5答辩,思考老师的评价、系统实现 - 主要功能代码void Welcome()printf(n);printf(/n);printf(/n);printf(/骑士飞行棋/n);printf(/n);printf(/n);printf(n);printf(nnnn);printf(两人对战nn);printf(请选择角色:1. 曹操2.孙权3. 刘备n);printf(请玩家1 选择角色:);/玩家1 选择角色scanf(%d,&nam

4、e1);printf(n请玩家 2 选择角色: );/玩家 2 选择角色scanf(%d,&name2);system(cls);/清屏/ 打印规则void Rule()printf(游戏规则nn);printf(1.两个玩家轮流掷骰子,如果上轮走到暂停关卡,停掷一次nn);printf(2.若玩家走到幸运轮盘,则和对方交换位置或者对方后退6步 nn);printf(3.若玩家走到某格,而对方也在此格,则对方退回原点nn);printf(4.若遇到地雷后退6 步nn);printf(5.若遇到暂停则此玩家下一回合停止掷骰子nn);printf(6.若遇到时空隧道再前进 10步nn);print

5、f(7.: 普通 :暂停 :地雷: 幸运转盘 :时空隧道n);printf(n8.玩家 1: 玩家 2: n);printf(按按任意键继续 :n);/按任意键继续getch();system(cls);void mapp()Random();int i,k;/ 标记为空格for(k=2;k31;k+)map0k=5;for(i = 2;i 5; i+)for(k = 0; k 30;k+) mapik=5;for(i = 6; i 9;i+)for(k = 1; k 31;k+)mapik=5;map1();/打印地图/ 打印地图void map1()int i,k;/ 开始打印for(i

6、= 0; i 10; i+)for(k = 0; k 31; k+)if(mapik=0 )printf();else if(mapik=1)printf();else if(mapik=2)printf();else if(mapik=3 )printf();else if(mapik=4)printf();else if(mapik=6)printf();else if(mapik=7)printf();else printf( );printf(n);void Random()int k=0,i=0;int a5;srand(time(NULL);/将系统当前时间设置为随机数种子int

7、Num;int s1,s2;while(1)Num = rand()%10;/产生小于 10 的随机数if(Num 3)ai=Num;i+;if(i=4)break;for(i=1;i 0 & s1 1 & s2 6 & s2 ai-1)printf(n);break;int Randomm()int Num;srand(time(NULL);/将系统当前时间设置为随机数种子while(1)Num=rand()%10;if(Num 0 & Num 7)break;return Num;void copyy1()int i,k;int s=1;for(i=1,k=0;k31;k+)steps=m

8、apik;s+;for(i=30,k=2;k-1;k-)steps=mapik;s+;for(i=0,k=6;k9;k+)steps=mapki;s+;for(i=9,k=0;k31;k+)steps=mapik;s+;void Process()int w;while(step1 99 & step2= 99)system(cls);end(1);/退出break;);Mobile(6,w,0);/system(cls);copypp2();map1();/ 玩家 2 掷骰子if(n2&na2)n2=0;n1=1;if(na1=0)n1=0;na1=1;n2=1;printf(玩家 2 掷骰

9、子,按任意键: );getch();w=Randomm();/掷骰子获得移动的步数printf(玩家 2 走的步数: %dn,w);getch();if(step2+w)= 99)system(cls);end(2);break;/ 移动Mobile(7,w,0);/system(cls);copypp2();map1();void Mobile(int nam,int st,int ww)if(nam=6)stepstep1=0;step1+=st;if(step10)step1=0;Judgment(nam,step1,ww);else stepstep2=0;step2+=st;if(s

10、tep20)step2=0;Judgment(nam,step2,ww);void Judgment(int nam,int st,int ww)int i;i=stepst;switch(i)case -1:break;case 0: stepst=nam;/普通格break;case 1: if(Randomm()3)/幸运轮盘stepstep1=7;/和对方交换位置- 做交换stepstep2=6;else /轰炸对方 - 对方退 6 步stepst=nam;if(nam=6)Mobile(7,-6,1);else Mobile(6,-6,1);break;case 2: stepst=

11、nam;if(nam=6)Mobile(7,-6,1);else Mobile(6,-6,1);break; /地雷/退后 6步case 3:stepst=nam;/暂停键if(nam=6)na1=0;if(ww=1)na1=1;n2=1;else na2=0;if(ww=1)na2=1;n1=1;/设置状态变量为暂停,标识下轮暂停break;case 4: stepst=nam;if(nam=6)Mobile(6,10,1);else Mobile(7,10,1);break;/时空隧道/再前进 10 步case 6:stepst=nam;step1=0;break;case 7:steps

12、t=nam;step2=0;break;void copypp2()int i,k;int s=1;for(i=1,k=0;k31;k+)mapik=steps;s+;for(i=30,k=2;k-1;k-)mapik=steps;s+;for(i=0,k=6;k9;k+)mapki=steps;s+;for(i=9,k=0;k31;k+)mapik=steps;s+;IV 、实训感悟通过对此项目的开发,我更加了解关于DOS 界面的开发流程,也使我在实践当中不断完善自己的知识系统,是自己充分的了解了理论知识。在此由衷的感谢指导教师张立红老师。V、主要参考文献及资料1 张海潘 . 软件工程导论 M. 北京 : 清华大学出版社 , 1998.2王为青,刘变红C 语言高级编程及实例剖析人民民邮电出版社2007-3-1VI 、成绩评定:设计成绩:(教师填写)指导老师:(签字)二一二年七月五日

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!