最简单的c语言迷宫游戏实验报告

2019-08-26 17:50

一、 内容:

1、 本游戏主要实现了人控制键盘方向键使小人(*)走出迷宫。 2、 具有的功能:

1)、在游戏菜单里人可以选择不同难度的游戏进行游戏; 2)、在游戏过程中,可以通过键盘方向键使小人移动,走出迷宫; 3)、在游戏过程中,当人碰到墙壁(#)的时候小人过不去; 4)、当人顺利完成游戏之后,输出“========you are win!======”字样,30秒钟

后自动返回到游戏菜单; 5)、在游戏过程中,人可以通过按Esc键返回游戏菜单;也可以可以按0直接退出

游戏; 6)、在游戏菜单里,按0键可以退出游戏。 3、具体应用: 1)、人主要同过键盘的1,2,3数字键来选择游戏难度;

2)、在游戏中通过Esc键来返回菜单; 3)、同过0键退出游戏。

二、 上机环境

操作系统:windows7 开发工具:VC6.0

三、 函数调用关系图

main() 输入1 introduce() system(\roadcake() Enter menu() 输入0 输入2 system(\ 输入3 system(\ roadcake() roadcake() exit(0);

四、 各函数功能说明

main() menu() roadcake() introduce() system(“cls”) exit(0)

drawmg1() drawmg2() drawmg3()

control1() control2() control3()

主函数; 游戏菜单; 消去小人路径; 游戏介绍; 消屏函数; 退出游戏; 画初级难度迷宫; 画中级难度迷宫; 画高级难度迷宫; 控制初级难度游戏; 控制中级难度游戏; 控制高级难度游戏;

五、 算法流程图

首先定义三个全局数组mg1[20][20]、mg2[30][30]、mg3[30][30]用于画出迷宫的地图;1表示墙(#),0表示空地( );

Introduce( )函数里如果按Enter键,则调用menu( )函数,从键盘中输入相应的提示数字,进入难度不同的游戏;游戏的执行在此只初级难度进行描述,其余的难度与其类似;

选了1后调用system(”cls”)进行清屏;drawmg1()函数进行迷宫的地图的绘

制,for(i=0;i<20;i++)

{ printf(\ for(j=0;j<20;j++) { ch=mg1[i][j]; switch(ch) { case 4: printf(\ case 0: printf(\ case 1: printf(\ } if(num++ ==0) /*每行只能输出20个字符*/ printf(”\\n”);

} }

之后调用控制函数control1()进行控制小人移动路径,在control1()函数里用do—while()语句进行循环,while(1)进行死循环,再定义四个整型a,b,m,n即:

for(n=0;n<30;n++) for(m=0;m<30;m++) if(mg3[n][m]==4) { a=n; /*为后面调用roadcake()实现消除小人路径进行初始赋值*/ b=m;break; }

用switch()语句选择方向键,在调用roadcake()函数进行消除小人路径 void roadcake(int *i,int *j) {

int temp;

temp=*i; /*进行值交换,即数组值为0和值为4进行交换 *i=*j; *j=temp; }

完成第一个控制之后进行清屏和画新的游戏状态图,若在游戏进行中要退出游戏,只需按0键,调用exit(0)函数结束;若要返回游戏菜单,按Esc键掉用menu()函数即可,重复以上步骤,直达游戏结束,此时掉用menu()函数自动返回菜单。

六、 程序运行效果图

开始执行程序:

按Enter键后:

选择2后进入中级难度游戏:


最简单的c语言迷宫游戏实验报告.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:上海交大复试试卷

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: