C 为什么在这两个测试用例中我的输出是错误的?

C 为什么在这两个测试用例中我的输出是错误的?,c,loops,C,Loops,我的两个测试用例18和20没有得到预期的输出 我编写了一个代码,其中用户必须键入一个小于100的整数,并根据以下条件打印怪异或不怪异: “如果n为奇数,则打印怪异的”, “如果n为偶数且在2到5的包含范围内,则打印Not wird”, “如果n为偶数且在6到20的范围内,则打印wird”, “如果n为偶数且大于20,则打印不奇怪”。运行测试用例为18和20的代码时,应该为这两种情况打印Weird,但结果是notweird int main() { int i; scanf("%d

我的两个测试用例18和20没有得到预期的输出

我编写了一个代码,其中用户必须键入一个小于100的整数,并根据以下条件打印
怪异
不怪异
: “如果n为奇数,则打印
怪异的
”,
“如果n为偶数且在2到5的包含范围内,则打印
Not wird
”, “如果n为偶数且在6到20的范围内,则打印
wird
”, “如果n为偶数且大于20,则打印
不奇怪
”。运行测试用例为18和20的代码时,应该为这两种情况打印
Weird
,但结果是
notweird

int main()
{
    int i;
    scanf("%d",&i);
    if (i%2==0)
    {
        if(1<i<6)
        {
            printf("Not Weird");
        }
        else if(6<=i<=20)
        {
            printf("Weird");
        }
        else
        {
            printf("Not Weird");
        }
    }
    else
    {
        printf("Weird");
    }
return 0;
}
intmain()
{
int i;
scanf(“%d”、&i);
如果(i%2==0)
{

如果(1C)不支持这样的陈述:

if(1<i<6)

if(1C)不支持这样的语句:

if(1<i<6)

如果(1这不符合您的想法:

1<i<6

这一点同样适用于
6这并不是你所认为的那样:

1<i<6

这同样适用于
6
1如果(太多的python让你认为C也有操作符链接,但它没有:)@Jean FrançoisFabre或者太多的数学,你确定这是什么吗?这就是python非常棒的地方,因为操作符链接功能非常直观(有时还会在python中造成灾难)
1如果(太多的python让你认为C也有操作符链接,但它没有:)@Jean Françoisfare或者太多的数学,你确定这是什么吗?这就是python非常棒的地方,因为操作符链接功能非常直观(有时还会在python中造成灾难)
(i < 1) && (i < 6)