2 yxts122 YXTS122 于 2016.04.03 18:19 提问

为什么这运行结果老卡住不动?求助大神。。
 #include<stdio.h>
#include<stdlib.h>
#include<conio.h>
int main()
{
    char a[5][10]={'#','#','#','#','#','#','#','#','#','#','#','o',' ','#','#','#','#',' ',' ',' ','#','#',' ',' ','#',' ',' ',' ','#','#','#','#','#',' ',' ',' ','#','#','#','#','#','#','#','#','#','#','#','#','#','#'};
    int x,y;
    char c;
    x=1;   y=1;
    c=getch();
    while (c!='q')
    {
        clrscr();//system("cls");
        if (c=='l')
        {
            a[x][y]=' ';
            y++;
            a[x][y]='o';
        }
        if (c=='a')
        {
            a[x][y]=' ';
            y--;
            a[x][y]='o';
        }
        if (c=='y')
        {
            a[x][y]=' ';
            x--;
            a[x][y]='o';
        }
        if (c=='v')
        {
            a[x][y]=' ';
            x++;
            a[x][y]='o';
        }
       for (x=0;x<5;x++)
      {
        for (y=0;y<10;y++)
              printf("%c",a[x][y]);
          printf("\n");
       }
       c=getch();
    }
    return 0;
}

这程序我无论按a,v,y,还是l,总是这样的运行结果,怎么回事?
图片说明

5个回答

github_27756899
github_27756899   2016.04.04 22:13
已采纳
char c;
x=1;   y=1;
c=getch();
while (c!='q')
{
    clrscr();//system("cls");

            //改为:
             char c;
c=getch();
while (c!='q')
{
    x=1;   y=1;
    clrscr();//system("cls");

            试试.

            原因请见2楼
caozhy
caozhy   Ds   Rxr 2016.04.03 19:09
 // 删除c=getch();
while ((c=getch())!='q') //修改
caozhy
caozhy 回复YXTS122: 你得说明你想做什么
2 年多之前 回复
caozhy
caozhy 回复YXTS122: 那只能是你程序有别的错。你只getch一次肯定更不对。
2 年多之前 回复
YXTS122
YXTS122 回复caozhy:不行,你这个我早试过了,不行的。。。。
2 年多之前 回复
lp_19880801
lp_19880801   2016.04.03 23:16

第二次循环时x=5.y=10,然后进行a[5][10]=' ',程序会崩溃的吧?

YXTS122
YXTS122 回复问我受不受:谢谢,我明白你的意思了。
2 年多之前 回复
YXTS122
YXTS122   2016.04.05 07:36

我改好了,谢谢大家。。。。。。。。。。。图片

CSDNXIAON
CSDNXIAON   2016.04.03 18:22

为什么运行结果老是错误
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
eclipse 卡住不动
今天遇到进入eclipse时一直卡在 DDMS post-create init 网上搜说删除adb.exe进程,占用5037的进程无果 最后是 删除 D:\workspace\.metadata\.lock 文件才有用,特此记录下。
安装SCOM2007R2报表服务器 失败(卡住不动)
安装SCOM2007R2报表服务器 失败(卡住不动)
svn检出不动了
svn检出不动,网上找了很久基本没什么用 最后看到一个人说重启,就抱着试试看的心理试了下 结果成功检出了。。之前跑项目遇到一个问题,前台发送请求,地址是a,但是每次响应接收地址都是b, 这是一个很诡异的问题 百度了一上午都没解决 最后重启解决了。。 eclipse有很多毛病,诡异的或者正常的,当找不到合适的解决方案时,别浪费时间了 直接重启吧,说不定就解决了
解决Android Studio build grale一直卡着不动问题
每个安卓新人开始使用Android stduio导入别人项目时都会遇到gradle项目一直卡着不动,这是因为后台正在下载和项目对应的gradle,但是由于谷歌的一道墙,所以会导致下载缓慢。 **下面来解决这方面的问题** 个人刚开始使用Android stduio时也是相当的困惑,所谓实践出真知,自己动手解决问题才是彻底的解决问题。 方法一: 一个是默认的gradle下载路径,也就是说你每次在
Eclipse导入项目后遇js校验卡死解决方法
打开Eclipse的workspace下该项目对应.project文件,删除如下两个相关配置: org.eclipse.wst.jsdt.core.javascriptValidator org.eclipse.wst.jsdt.core.jsNature 重启Eclipse即可
老赵书托(1)-SCIP
 也不知道博客园老赵先生是否同意转载,秉着与大家一起分享好书的原则,我还是先摘录如下,与大家共享。全文出处请大家访问老赵的博客:http://www.cnblogs.com/JeffreyZhao/archive/2009/07/15/recommended-reading-2-sicp.html 我要推荐的第一本书便是大名鼎鼎的《Structure and Interpretatio
安卓studio.doc
求助大神啊
cnpm installa一直卡着不动
安装vue.js环境时,npm install下载不成功,cnpm install一直卡在installing wbuf@^1.1.0,请各路大神帮忙。。。
(OK) WPS会一直卡住,无法操作
http://blog.csdn.net/ztguang/article/details/51248822 http://bbs.wps.cn/thread-22575920-1-1.html 用的是Fedora23, 4.4.6的内核, 最新版的WPS, 增量升级包.打开WPS文字,演示都会卡在界面,然后无法操作. 提示:Docer-在线模板 - WPS 文字” 未响应。
Vim、Xshell、远程终端莫名卡死的原因
前言 最近通过Xshell连接远程服务器,然后使用Vim修改文件时会莫名其妙的卡死,一开始我还没注意,因为近期的网络一直不太好,经常出现按下一个字母半天才反应过来的情况,所以我没有太在意,直接关闭终端重新打开就好。直到有一天我开着两个终端的时候,Vim又卡着不动了,而另一个终端还以流畅的处理我敲击的命令,我就断定这肯定不是网络原因了。 原因 既然是Vim卡住了那就查查Vim本身有什么