迷宫c语言(4)

2019-04-21 11:55

#include <stdio.h> int main() { int key; key = getch();

while( key != 27 ) //键入值不为 ESC {

printf("%d\\n", key); key = getch(); } }

继续看看 paint 函数 函数如下

void paint(int x,int y) //画迷宫 {

gotoxy(2*y-2,x-1); switch(map[x][y]) { case Start:

printf("入");break; //画入口

case End:

printf("出");break; //画出口 case Wall:

printf("※");break; //画墙 case Road:

printf(" ");break; //画路 } } 这

个函数实际上比较容易理解,他首先将光标指向入口,然后在main函数中遍历整个map数组,画出地图 。也可以不用 入 出 ※ 空格 这些来做地图 比如改一下

switch(map[x][y]) { case Start:

printf("1");break; //画入口 case End:

printf("2");break; //画出口

case Wall:

printf("3");break; //画墙 case Road:

printf("4");break; //画路 }

然后就应该能理解了这部分是怎么做到的

接下来我们看最后一个函数void game() //游戏相关操作

void game() {

int x=2,y=1; //玩家当前位置,刚开始在入口处 int c; //用来接收按键 while(1) {

gotoxy(2*y-2,x-1); //这里的含义是到达入口处 printf("☆"); //画出玩家当前位置 if(map[x][y]==End) //判断是否到达出口 {

gotoxy(30,24);

printf("到达终点,按任意键结束"); getch();

break; }

c=get_key(); if(c==Esc) {

gotoxy(0,24); break; } switch(c) {

case Up: //向上走 if(map[x-1][y]!=Wall) { paint(x,y); x--; } break;

case Down: //向下走 if(map[x+1][y]!=Wall) { paint(x,y); x++;

} break;

case Left: //向左走 if(map[x][y-1]!=Wall) { paint(x,y); y--; } break;

case Right: //向右走 if(map[x][y+1]!=Wall) { paint(x,y); y++; } break; } } }

事实上这个函数也不是很难理解 所有函数除了算法部分都不难理解,就看用不用心去读代码了

就像注释那样, gotoxy(2*y-2,x-1); 到达入口处 用☆当玩家,然后先


迷宫c语言(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:农村信用社体制改革面临的问题及对策

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

马上注册会员

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