按键盘方向键进行游戏,当顺利结束后:
与游戏菜单相同,选择不同的级别进行游戏。
七、 总结
本次课设在设计算法和运用语言在一定程度上遇到困难,同时有些以前不知道的函数和算法,在这次实习中通过查找资料学到了许多;觉得紧紧学好语言是不够的,得要知道怎样运用,即算法很重要;
八、 参考文献
李春葆 曾平 喻丹丹 《c语言程序设计(第2版)》 清华大学出版社 2011
九、 程序清单
#include
void drawmg1(void);
/*定义画迷宫函数*/ void drawmg2(void); void drawmg3(void);
void control1(void);
/*定义控制函数*/
void control2(void); void control3(void);
void roadcake(int *i,int *j);
/*定义交换函数*/
void menu(void);
/*定义菜单函数*/
void introduce(void);
/*定义游戏介绍函数*/ int
mg1[20][20]={{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, {4,0,0,0,0,1,1,1,0,0,0,0,1,1,1,0,0,0,0,1}, {1,1,1,0,0,1,1,1,0,0,1,0,0,0,0,0,1,0,0,1}, {1,1,1,0,0,1,1,1,0,0,1,1,1,1,0,0,1,0,0,1}, {1,0,0,0,0,1,1,1,0,0,0,1,1,1,0,0,1,0,0,1}, {1,0,0,1,1,1,1,1,1,0,0,1,1,1,0,0,1,0,0,1}, {1,0,0,1,1,1,1,1,1,0,0,1,0,0,0,0,1,0,0,1}, {1,0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,1,0,0,1}, {1,0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,1,0,0,1}, {1,0,0,1,1,1,1,1,1,0,0,0,0,0,1,0,0,0,0,1}, {1,0,0,0,0,0,0,1,1,0,0,0,0,0,1,0,0,1,1,1}, {1,0,0,0,0,0,0,1,1,0,0,1,1,1,1,0,0,1,1,1}, {1,1,1,1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,1},
{1,1,1,1,1,0,0,1,1,1,1,1,0,0,0,0,0,0,0,1}, {1,0,0,0,0,0,0,1,0,0,0,1,1,1,1,0,1,0,0,1}, {1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,1,0,0,1}, {1,0,0,1,1,1,1,1,0,1,1,1,1,0,0,0,0,0,1,1}, {1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,1}, {1,1,1,1,1,1,1,1,1,1,0,0,1,1,1,0,0,0,0,3},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
}; int
mg2[30][30]={{1,4,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,1,0,0,0,0,1,1,0,0,1},
{1,0,1,1,1,1,0,1,1,1,0,1,0,0,1,1,0,1,0,1,1,0,1,1,0,1,0,0,0,1},
{1,0,0,0,1,0,0,0,0,1,0,1,0,1,1,1,0,1,0,1,1,0,1,1,0,1,0,1,0,1},
{1,0,1,0,1,0,1,1,0,1,0,1,0,1,0,0,0,1,0,1,1,0,1,1,0,1,0,1,0,1},
{1,0,1,0,1,0,1,0,0,1,0,0,0,0,1,1,0,0,1,0,0,0,1,1,0,0,1,1,0,1},
{1,0,1,0,0,0,0,1,1,1,1,1,1,0,1,1,1,0,1,0,1,1,1,0,0,1,1,0,0,1},
{1,0,1,1,1,1,0,0,0,0,1,1,0,0,1,0,0,0,1,0,1,0,0,0,1,1,1,0,1,1},
{1,0,0,0,0,1,1,1,0,0,0,0,1,0,1,0,1,1,1,0,0,1,1,0,0,0,0,0,0,1},
{1,1,1,1,0,1,0,0,0,1,1,0,1,0,1,0,0,0,0,1,0,0,1,1,1,1,0,1,1,1},
{1,0,0,0,0,0,1,1,0,1,1,0,1,0,1,0,0,0,0,1,0,0,1,1,1,
1,0,1,1,1},
{1,0,1,1,1,0,1,1,0,1,1,0,0,0,1,0,1,1,0,1,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,1,0,0,0,0,0,0,1,0,1,1,1,1,1,0,1,1,1,0,0,0,0,1,1,0,1},
{1,1,1,0,1,0,1,1,0,1,0,1,0,0,0,0,0,0,0,1,0,1,0,1,1,1,0,0,0,1},
{1,1,1,0,0,1,1,1,0,1,0,1,1,1,1,0,1,1,1,1,0,0,0,1,0,0,0,1,1,1},
{1,1,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,1,1,1,1,1},
{1,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,1,1,1,0,1,1,1,1,1},
{1,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0,0,0,0,0,0,0,0,1},
{1,0,1,1,0,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,1,0,1,1,1,1,0,1},
{1,0,0,1,0,1,0,1,1,1,1,1,1,1,1,0,1,0,1,0,0,0,1,0,1,1,1,1,0,1},
{1,1,0,1,0,1,0,1,1,1,1,1,1,1,1,0,1,0,1,0,1,1,1,0,1,0,0,0,0,1},
{1,1,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,1,1,1,1},
{1,1,1,1,1,1,0,0,0,0,1,1,0,1,1,1,1,1,1,1,1,0,1,1,1,0,0,0,0,1},
{1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,0,1,1,1,0,1,1,0,1},
{1,0,0,0,0,0,0,0,1,1,0,0,0,1,1,0,0,1,0,0,0,0,1,1,0,0,0,1,0,1},
{1,0,0,1,1,1,1,0,1,1,0,1,1,1,1,0,1,1,1,1,1,1,1,1,0,
1,1,1,0,1},
{1,1,0,1,1,1,1,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1},
{1,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,1,1,0,0,1,1},
{1,1,1,1,0,0,0,0,0,1,1,1,1,1,1,0,1,1,0,0,0,0,0,0,0,0,0,1,1,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,
1,1,1,1,1},
}; int
mg3[30][30]={{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,1,0,0,0,0,1,1,0,0,1},
{1,0,1,1,1,1,0,1,1,1,0,1,0,0,1,1,0,1,0,1,1,0,1,1,0,1,0,0,0,1},
{1,0,0,0,1,0,0,0,0,1,0,1,0,1,1,1,0,1,0,1,1,0,1,1,0,1,0,1,0,1},
{1,0,1,0,1,0,1,1,0,1,0,1,0,1,0,0,0,1,0,1,1,0,1,1,0,1,0,1,0,1},
{1,0,1,0,1,0,1,0,0,1,0,0,0,0,1,1,0,0,1,0,0,0,1,1,0,0,1,1,0,1},
{1,0,1,0,0,0,0,1,1,1,1,1,1,0,1,1,1,0,1,0,1,1,1,0,0,1,1,0,0,1},
{1,0,1,1,1,1,0,0,0,0,1,1,0,0,1,0,0,0,1,0,1,0,0,0,1,1,1,0,1,1},
{1,0,0,0,0,1,1,1,0,0,0,0,1,0,1,0,1,1,1,0,0,1,1,0,0,0,0,0,0,1},
{1,1,1,1,0,1,0,0,0,1,1,0,1,0,1,0,0,0,0,1,0,0,1,1,1,1,0,1,1,1},
{1,0,0,0,0,0,1,1,0,1,1,0,1,0,1,0,0,0,0,1,0,0,1,1,1,1,0,1,1,1},
{1,0,1,1,1,0,1,1,0,1,1,0,0,0,1,0,1,1,0,1,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,1,0,0,0,0,0,0,1,0,1,1,1,1,1,0,1,1,1,0,0,0,0,1,1,0,1},
{1,1,1,0,1,0,1,1,0,1,0,1,0,0,0,0,0,0,0,1,0,1,0,1,1,1,0,0,0,1},
{1,1,1,0,0,1,1,1,0,1,0,1,1,1,1,0,1,1,1,1,0,0,0,1,0,0,0,1,1,1},
{1,1,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,1,1,1,1,1},
{1,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,1,1,1,0,1,1,1,1,1},
{1,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0,0,0,0,0,0,0,0,1},
{1,0,1,1,0,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,1,0,1,1,1,1,0,1},
{1,0,0,1,0,1,0,1,1,1,1,1,1,1,1,0,1,0,1,0,0,0,1,0,1,1,1,1,0,1},
{1,1,0,1,0,1,0,1,1,1,1,1,1,1,1,0,1,0,1,0,1,1,1,0,1,0,0,0,0,1},
{1,1,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,1,1,1,1},
{1,1,1,1,1,1,0,0,0,0,1,1,0,1,1,1,1,1,1,1,1,0,1,1,1,0,0,0,0,1},
{1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,0,1,1,1,
0,1,1,0,1},
{1,0,0,0,0,0,0,0,1,1,0,0,0,1,1,0,0,1,0,0,0,0,1,1,0,0,0,1,0,1},
{1,0,0,1,1,1,1,0,1,1,0,1,1,1,1,0,1,1,1,1,1,1,1,1,0,1,1,1,0,1},
{1,1,0,1,1,1,1,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1},
{1,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,1,1,0,0,1,1},
{1,1,1,1,0,0,0,0,0,1,1,1,1,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,4},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1},
};
int road[20][20];
void main() {
introduce();
}
/*-----------------------------------------------------------------------------*/
/*初级游戏控制函数*/
void control1(void) { int a,b,m,n; char num;
do
/*循环取得
空制键*/ { for(n=0;n<20;n++) for(m=0;m<20;m++) if(mg1[n][m]==4)
{