啊哈磊_编程从这里起步

标题: 哪位老师帮看下问题出在哪里呢?运行不了 [打印本页]

作者: 袁嘉乐    时间: 2020-5-10 12:44
标题: 哪位老师帮看下问题出在哪里呢?运行不了
[code]#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("You win!");
   Sleep(5000);
   return 0;
}
作者: 嘟嘟编程    时间: 2020-5-13 14:01
本帖最后由 嘟嘟编程 于 2020-5-13 14:04 编辑

[code]#include <stdio.h>   //[code]什么意思

while(x!=p // /*这里错了,斜杠是注释符*/y!=q)
这段代码应该是这样:
while(x!=p || y!=q)

if(ch=='s')
{
    if(a[x+1][y]!='#')
    {
        a[x][y]!=' ';   //为什么是!=啊?!不等于是逻辑表达式(后面一个也错了)
        x++;
        a[x][y]='O';
     }
}

if(a[x][y-1]!='#')
{
a[x][y]=' ';
y++ //漏分号了
a[x][y]='O';
}
楼主,注意符号哦

if(a[x-1][y]!='#')
{
a[X][y]!=' ';//x要小写(c语言区分大小写,X和x是两个变量)
x--;
a[x][y]='O';
}

正确代码如下:
#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);
    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);
   }
   system("cls");
   printf("You win!");
   Sleep(5000);
   return 0;
}
希望能够帮助到你






欢迎光临 啊哈磊_编程从这里起步 (https://bbs.codeaha.com/) Powered by Discuz! X3.2