搜索
查看: 575|回复: 5
打印 上一主题 下一主题

大佬帮我找BUG,按书上敲的;

[复制链接]
跳转到指定楼层
楼主
 楼主| 发表于 2018-10-19 16:38:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
#include <stdio.h>
#include <stdlib.h>
#include<windows.h>

int main()
{
                char a[50][50]={"######",
                                                "#O #  ",
                        "#  # #",
                        "##   #",
                        "######",
                                           };
        int i,x,y,p,q;
        char ch;

        x=1; y=1; p=1; q=5;
        for(i=0;i<=5;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");
       for(i=0;i<=5;i++)
                                puts(a[i]);
       }         

       system("cls");
       printf("牛逼!\n");
       Sleep(5000);

       
        return 0;
}


沙发
发表于 2018-10-20 12:58:34 | 只看该作者
你看,你在getch()并if()后没有重置ch变量,所以会出错

板凳
发表于 2018-10-20 12:59:48 | 只看该作者
阿哈_C 发表于 2018-10-20 12:58
你看,你在getch()并if()后没有重置ch变量,所以会出错

说错了说错了sorry

地板
发表于 2018-10-20 13:01:01 | 只看该作者
你可能是用c++编的,c++的getch()是需要头文件<conio.h>的
5#
发表于 2018-10-23 20:34:47 | 只看该作者
你再用c写试试可不可以
6#
发表于 2019-2-13 18:08:42 | 只看该作者
你真是傻,这个程序要用C++编,第四句要打using namespace std;
第一句还要加include<iostream>.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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