搜索
查看: 295|回复: 4
打印 上一主题 下一主题

求助!!!

[复制链接]
跳转到指定楼层
楼主
 楼主| 发表于 2019-1-9 18:42:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
我把第八章的大迷宫弄出来了(这里复制时出错了),我想弄一个60秒(或30秒)的倒计时,在这段时间到达终点,求助怎么弄,以下是源代码:
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
int main()
{
        char a[50][50]={"##############################",
                                        "#O         #   ##   # ### ####",
                    "# ###### # # #    # # ### ####",
                    "# #   ## #   # #### # ###   ##",
                    "#   # ##  ###    #  #  ## ####",
                    "##### #     # ##### ##    ####",
                    "#   # ##### #   #   # # #    #",
                    "# # #    ## # #### ## # # ####",
                    "# # # ##      ##      # # ####",
                    "# # # ####### ## ###### #   ##",
                    "# #   ##   # ## ###### ###   #",
                    "# ###### # #####  #        # #",
                    "#        # #     ##### ### #  ",
                    "# ######## ##### # ### ### # #",
                    "#     # ## ##### ###       ###",
                    "##### # ## #      ######## # #",
                    "#     # ## ## ###        #   #",
                    "# # ###       ###### ####### #",
                    "# #    ### ##      #         #",
                    "##############################",
                                        };
        char ch,j;
    int i,x,y,q,p,n;
    x=1,y=1,p=12,q=30,n=0;

    printf("按H开始");
    j=getch();
    if(j=='h'||j=='H')
    {
                system("cls");
                for(i=0;i<=19;i++)
                        puts(a[i]);
                while(x!=p || y!=q)
                {   
                        ch=getch();
                        if(ch=='s')
                        {
                                if(a[x+1][y]!='#')
                                {
                                        a[x][y]=' ';
                                        x++;
                                        a[x][y]='O';
                                }
                        }
                        if(ch=='w')
                        {
                                if(a[x-1][y]!='#')
                                {
                                        a[x][y]=' ';
                                        x--;
                                        a[x][y]='O';
                                }
                        }
                        if(ch=='a')
                        {
                                if(a[x][y-1]!='#')
                                {
                                        a[x][y]=' ';
                                        y--;
                                        a[x][y]='O';
                                }
                        }
                        if(ch=='d')
                        {
                                if(a[x][y+1]!='#')
                                {
                                        a[x][y]=' ';
                                        y++;
                                        a[x][y]='O';
                                }
                        }
                        system("cls");
                }
    }
    system("cls");
        printf("YOU WIN!!!\n");

        Sleep(5000);
        return 0;
}


沙发
发表于 2019-1-9 19:16:07 | 只看该作者
看一下97页第四章啦;希望有所帮助,如果一秒才能动一次的话把Sleep里面改小点,循环多点
板凳
 楼主| 发表于 2019-1-9 19:23:36 | 只看该作者
霸气冲天 发表于 2019-1-9 19:16
看一下97页第四章啦;希望有所帮助,如果一秒才能动一次的话把Sleep里面改小点,循环多点

用Sleep代码会导致整个游戏暂停,请你告诉我怎么用好吗?
地板
 楼主| 发表于 2019-1-10 18:20:30 | 只看该作者
5#
发表于 2019-1-11 18:30:26 | 只看该作者
把Sleep里面改小点,循环多点
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表