首页 > 解决方案 > 我正在制作一个 C 程序,它只接受 C 中 1 和 8 之间的输入。我究竟做错了什么?

问题描述

#include <stdio.h>
#include <cs50.h>

int main(void)
{
    int n;
    do
    {
     n = get_int("Enter a number between 1 and 8(including 8):  ");
    }
    while ((n<1) && (n>8));
    printf("%d\n",n);

}

标签: climitdo-whilecs50

解决方案


该条件(n<1) && (n>8)永远不会为真,因为没有数字小于 1 而它们大于 8。

你应该(n<1) || (n>8)改用。


推荐阅读