0

こんにちは私は、審査員に9以上が入力された場合、合格する理由を理解しようとしていますが、ifが>=4および<=8と言った場合は発生しません。

ありがとう

while(!(judge >= 4) && (judge <= 8))
{
    printf("How many judges are there ? Enter a number between 4 - 8 \n");
    scanf("%d", &judge);
    while(!(judge >= 4) && (judge <= 8))
    {
        printf("You entered %d Enter a number between 4 - 8 \n", judge);
        scanf("%d", &judge);
        if((judge >= 4) && (judge <= 8))
        {
            break;
        }
    }

}
4

1 に答える 1

1

かっこが欠けているようです

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

(この間違いは2か所に現れます。)

ちなみに、次のようにコードを再構築することで、多くの繰り返しを回避できます。

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);
}
于 2013-03-25T06:49:21.523 に答える