鱼C论坛

 找回密码
 立即注册
查看: 2221|回复: 10

[已解决]请帮忙看下哪里的问题,感觉跳不出循环

[复制链接]
发表于 2021-7-9 16:50:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 salv 于 2021-7-9 20:08 编辑

#include<stdio.h>
int main()
{
        int i=0;
        char c;
        while(1)
        {
                c='\0';                /*变量赋初值*/
                while(c!=13 && c!=27) /*键盘接收字符直到按回车或ESC键*/
                {
                        c=getchar();
                        printf("%c\n",c);
                }
                if(c==27)
                break;               /*判断若按Esc键刚退出循环*/
                i++;
                printf("The No. is %d\n", i);
        }
        printf("The end");
        return 0;
}
退不出循环,也实现不了计次,请帮忙看下哪里的问题,谢谢了
最佳答案
2021-7-9 20:12:01
salv 发表于 2021-7-9 20:07
你试下我那个代码哪里有毛病,我想着要实现输入几个字母然后按一次回车,分行输出单个字母,然后计数一次 ...

你改了 &&不就能跳出来了。

你代码写的太多余了。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-7-9 17:24:29 | 显示全部楼层
while条件的问题吧,你这任何时候都是正确的呀,不就一直循环出不来了吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-9 19:06:28 | 显示全部楼层
连帅帅 发表于 2021-7-9 17:24
while条件的问题吧,你这任何时候都是正确的呀,不就一直循环出不来了吗?

我这个连里边的循环也退不出,按了回车或者ESC没反应退不出
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-7-9 19:57:20 | 显示全部楼层
#include<stdio.h>
int main(void){
    int ch;
    int i=0;
    while( (ch= getchar() )!=27){
            i++;
        putchar(ch);
    }
    printf("%d \n",i);
    return 0;
}
这样不就行了
 i=i++;
另外 你这是什么操作。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-9 20:00:00 | 显示全部楼层
万千只cnm 发表于 2021-7-9 19:57
这样不就行了

另外 你这是什么操作。。。

。。。这个我写错了,i++,或者i=i+1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-7-9 20:04:23 | 显示全部楼层
while(c!=13 || c!=27)

非的话 联结词也要非呀。
          &&
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-9 20:07:09 | 显示全部楼层
万千只cnm 发表于 2021-7-9 19:57
这样不就行了

另外 你这是什么操作。。。

你试下我那个代码哪里有毛病,我想着要实现输入几个字母然后按一次回车,分行输出单个字母,然后计数一次,输出The No. is 1,再输入字母然后按回车再计数一次,输出The No. is 2,以此类推,直到按ESC就退出,然后输出the end。我感觉按了回车以后就跳不出里边的循环。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-9 20:09:05 | 显示全部楼层
万千只cnm 发表于 2021-7-9 20:04
非的话 联结词也要非呀。
          &&

是的是的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-7-9 20:12:01 | 显示全部楼层    本楼为最佳答案   
salv 发表于 2021-7-9 20:07
你试下我那个代码哪里有毛病,我想着要实现输入几个字母然后按一次回车,分行输出单个字母,然后计数一次 ...

你改了 &&不就能跳出来了。

你代码写的太多余了。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-9 20:22:46 | 显示全部楼层
万千只cnm 发表于 2021-7-9 20:12
你改了 &&不就能跳出来了。

你代码写的太多余了。。。

改过了,跳不出,按回车后字母分行显示,可以继续输入,但是没有输出那行the No. is i,按ESC没有反应
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-9 20:25:48 | 显示全部楼层
QQ图片20210709202312.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-15 01:42

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表