0711小项目推箱子走迷宫

1、先在windows系统下把getch.h放入共享文件夹

2、在Ubuntu终端输入cd /media/sf_Share/ 进入共享文件夹

3、复制getch.h到C标准库中

    sudo cp getch.h /usr/include/

4、加读权限

    sudo chmod +r getch.h

5、导入getch.h头文件,使用getch()函数获取键值

    Ubuntu下的键值:

    方向键上:183   下:184 右:185 左:186

走迷宫:        day04/maze.c

    数据分析:

        1、定义二维字符数组作为迷宫地图

        2、定义变量记录角色的位置 x y

        3、时间:time(NULL)获取1970-1-1到运行时过了总秒数

    逻辑分析:

        进入死循环:

        1、显示地图:遍历二维数组

        2、获取方向键并处理

            判断前方是不是路' '

                如果是:

                    1、把旧位置变成' '

                    2、把新位置变成'@'

                    3、更新角色位置坐标 x y

        3、判断是否到达出口

            如果是:程序结束

推箱子:

    数据分析:

        1、确定数值与字符的对应关系

            0   ' '路

            1   '@'人

            2   '#'墙

            3   '$'箱子

            4   'O'目标点

            5   '@'人在目标点

            7   '$'箱子在目标点

        2、定义8*8的整数地图并初始化

        3、定义记录角色位置的变量 x y

        4、定义记录步数的变量

    逻辑分析:

        进入死循环:

        1、清理屏幕、显示地图

            if(map[i][j]) printf(" ")

        2、判断游戏是否胜利

        3、获取方向键并处理

            1、前方是路\目标点,往前走

                前方    +1

                原位置  -1

                更新坐标

            2、前方是箱子

                箱子的前方是路\目标点

                    人前方的前方    +3

                    人前方         -3+1

                    人原位置        -1

                    更新坐标

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值