鱼C论坛

 找回密码
 立即注册
查看: 975|回复: 4

求助,为什么结果和我预期不同,好像有bug

[复制链接]
发表于 2020-3-3 14:28:48 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 magicpower 于 2020-3-3 14:50 编辑

  1 #include <stdio.h>
  2 int main(void)
  3 {
  4         char ch;
  5         int num=0;
  6         while(ch=getchar() && ch != '#')
  7         {
  8                 if(ch == '.')
  9                 {
10                         putchar('!');
11                         num++;
12                 }
13                 else if(ch == '!')
14                 {
15                         putchar(ch);
16                         putchar('!');
17                         num++;
18                 }
19                 else
20                 putchar(ch);
21         }
22         printf("%d",num);
23         return 0;
24 }



当我输入#后没有停止while循环,而且不论我打什么,while里的好像都没有执行,这是为什么,是哪有bug吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-3-3 14:41:04 | 显示全部楼层
用代码格式发代码,而且代码前面不要有序号
把while循环的ch != '#' 改成
getchar() != '#'
试试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-3 14:45:32 From FishC Mobile | 显示全部楼层
qiuyouzhi 发表于 2020-3-3 14:41
用代码格式发代码,而且代码前面不要有序号
把while循环的ch != '#' 改成


谢谢,我已经知道是哪出问题了,逻辑运算符比赋值运算优先级高,所以while永远为true
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-3 14:49:05 | 显示全部楼层
magicpower 发表于 2020-3-3 14:45
谢谢,我已经知道是哪出问题了,逻辑运算符比赋值运算优先级高,所以while永远为true

嗯嗯,那就把帖子类型设置成已经解决吧
在编辑帖子-标题旁边
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-3 14:52:39 | 显示全部楼层
        用无缓冲的键盘输入,每按下一个键,无需按下回车键,程序同步获得输入
#include <stdio.h>
#include <conio.h>
int main(void)
{
        char ch                             ;
        int num                             ;
        for(num = 0 ; (ch = getch()) != '#' ; num ++) {
                if(ch == '\r') printf("\n") ;
                else putch(ch)              ;
        }
        if(num) printf("\n")                ;
        printf("%d\n" , num)                ;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-15 23:47

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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