代码-花括匹配一进入while循环就出不来

问题描述

花括匹配一进入while循环就出不来
 在这里书写代码片
```#include<stdio.h>

int main()
{
    int ch;
    int j=0;

    while((ch = getchar()) != EOF );
    {
        if( ch == '{')
        {
            j++;
        }
        if(ch == '}' && j!=0 )
        {
            j--;
        }

        if (ch=='}' && j==0 )
        {
            printf("non");
            return 0;
        }

    }
    if( j==0 )
    {
        printf("yesn");
    }
    else
    {
        printf("non");
    }
    return 0;
}
为啥那while循环出不来    vc6中

解决方案

晕,一个是小括号,一个是花括号,当然不匹配,仔细调试下,看看j==0是否满足

解决方案二:

你按的是回车键吗?如果出不来,试试在while语句里加一个如while((ch = getchar()) != EOF ||另外一个条件成立的话);

解决方案三:

从格式上看 我推测是因为while的条件后面多打了一个分号
这样的话始终都是执行的空语句 while(!EOF)不起作用了
应该为while(){
。。。
}

解决方案四:

while((ch = getchar()) != EOF );
已经构成了一个完整的循环体,循环内容是分号前while后,即空语句,与后边任何东西无关。

解决方案五:

while((ch = getchar()) != EOF );把最后的分号去掉

解决方案六:

while((ch = getchar()) != EOF );把最后的分号去掉

解决方案七:

while((ch = getchar()) != EOF );把最后的分号去掉

解决方案八:

while((ch = getchar()) != EOF );把最后的分号去掉

解决方案九:

while((ch = getchar()) != EOF );把最后的分号去掉

解决方案十:

while((ch = getchar()) != EOF );把最后的分号去掉

时间: 2024-08-30 19:52:04

代码-花括匹配一进入while循环就出不来的相关文章

文件名-这段正则代码为什么能匹配含有汉字的字段?

问题描述 这段正则代码为什么能匹配含有汉字的字段? 软件平台:Ubuntu 14.04LTS的find命令 命令代码: find . -regextype ""posix-extended"" -regex ""./[^x{4e00}-x{9fa5}]+.*"" 效果:匹配所有含有汉字文件名的文件 疑问:utf编码 x{4e00}到 x{9fa5}是 汉字的区间,应该用 [x{4e00}-x{9fa5}]才对.但是只有[^x{

java 排列组合-求大神帮我看看这段代码,打印完“12345”结束for循环后为什么还能继续运行?新手没金币,抱歉!

问题描述 求大神帮我看看这段代码,打印完"12345"结束for循环后为什么还能继续运行?新手没金币,抱歉! public class Test { public static void main(String[] args) { prints(0 0 0 0 0);}public static void prints(int k1int k2int k3int k4int k5){ if(k5!=0){ System.out.println(k1*10000+k2*1000+k3*1

在遍历文件中写了显示图片的代码,通过控件做显示循环除了问题,麻烦了

问题描述 在遍历文件中写了显示图片的代码,通过控件做显示循环除了问题,麻烦了 我想循环显示图像,在遍历文件中写了显示图片的代码,通过控件做显示循环,调试没问题,运行的时候出现ASSERT(m_hFile != INVALID_HANDLE_VALUE)这一句,设置断点之后发现if(!file.open)这句有问题,有高手能为我解答一下吗,弄了好久没弄出来,麻烦了 void CbianliDoc::OnOpenfile() { // 判断当前图像是否已经被改动 if (IsModified())

安卓程序如何用代码监测手机的网速快慢然后给出提示?

问题描述 安卓程序如何用代码监测手机的网速快慢然后给出提示? 安卓程序如何用代码监测手机的网速快慢然后给出提示?就是在后台检测程序操作中网速慢的话给出提示信息 解决方案 统计一定时间内发送,接收的数据,然后得出流量给出提示 解决方案二: 这个功能很难实现. 只有不断上传下载才能得到当前速度. 问题是,不断测试耗费流量.如果测试频率低,没法及时发现问题,测试数据量小,也不准.就算不差流量,也浪费电量. 再说,网速快不快,用户上网的时候自然知道.你可以利用你的数据传输本身去统计.比如你的应用是视频播

大数据 算法-数据库中有10万条记录,list中有5万条,怎样不通过for循环找出相同的数据?

问题描述 数据库中有10万条记录,list中有5万条,怎样不通过for循环找出相同的数据? java 中 .数据库中有10万条记录 list中有5万条 ,怎样不通过for循环,找出数据库和list中相同的数据? 解决方案 list中的数据批量导入临时表,跟那10W条数据对比,对比完一批删一批,得出相同数据插入另一张临时表, 解决方案二: 其实如果你只是找出相同的数据,你可以直接用SQL接可以了!我写一个SQL语句 select count(*),colName from tableName t

编程-C51左循环函数调用出错了

问题描述 C51左循环函数调用出错了 这个是什么问题,是因为我的函数库没有在正确位置吗.我已经知道dalay那个错误了可是函数调用还是有问题啊 解决方案 函数corl 改成 crol 你名字打错了

循环哪里出错了,逻辑错误查找,高手帮帮忙

问题描述 循环哪里出错了,逻辑错误查找,高手帮帮忙 #include int main() { int donation=0,amount=0; //donation代表每次捐献的金额,amout代表总额 while(amount<10) //捐款超过十万就不再接受捐献 { scanf("%dn",&donation); amount=amount+donation; } printf("%d",amount); return 0; } 为什么每次输入

web服务器启动问题 请大神解答,看不懂代码帮忙备注下,而且什么会弹出cmd,并发布应用

问题描述 web服务器启动问题 请大神解答,看不懂代码帮忙备注下,而且什么会弹出cmd,并发布应用 set MainPath=com.cs.Server :start if not "%JAVA_HOME%" == "" goto gotJava_home set JAVA_HOME=D:jdk1.7.0_67 :gotJava_home set MEM_ARGS=-Xms128m -Xmx512m set JAVA_OPTIONS=-Duser.timezone=

c语言-C代码帮看下思想,最好能写出Java代码,非常感谢

问题描述 C代码帮看下思想,最好能写出Java代码,非常感谢 2.*?slideing?block?chunking,?performance?is?a?big?issue?due?to?too?many?hash?lookup.? 3.?*/?? 4.static?int?file_chunk_sb(int?fd,?int?fd_ldata,?int?fd_bdata,?unsigned?int?*pos,?unsigned?int?*block_num,?? 5.?????????block