C 意外的结果,而

C 意外的结果,而,c,testing,C,Testing,嗨,我想知道为什么如果输入9或以上作为判断,它会通过,但它不应该导致if显示>=4和=4)和(&&&(判断=4)和(&(判断=4)和(&)(判断),看起来你缺少一对括号 while(!((judge >= 4) && (judge <= 8))) ^ ^ 而(!((judge>=4)&&(judge=4)&&judge你说的通过是什么意思?这些和运算符优先级错误。!仅适用于第一个条件。 while(

嗨,我想知道为什么如果输入9或以上作为判断,它会通过,但它不应该导致if显示>=4和=4)和(&&&(判断=4)和(&(判断=4)和(&)(判断),看起来你缺少一对括号

while(!((judge >= 4) && (judge <= 8)))
       ^                            ^

而(!((judge>=4)&&(judge=4)&&judge你说的通过是什么意思?这些和运算符优先级错误。
仅适用于第一个条件。
while(!((judge >= 4) && (judge <= 8)))
       ^                            ^
printf("How many judges are there ? Enter a number between 4 - 8 \n");
for (;;) {
    scanf("%d", &judge);
    if (judge >= 4 && judge <= 8) {
        break;
    }
    printf("You entered %d Enter a number between 4 - 8 \n", judge);
}