为什么一直都是第一个的判断表达式

来源:-

慕妹8495564

2018-11-13 14:39

#include<stdio.h>
int main()
{
    float x,y;
    printf("输入x的值:");
    scanf("%f",&x);
    if(20>x>=0)
        printf("\n\ny=%f",y=x+10);
    else if(20<=x<50)
        printf("\n\ny=%f",y=30);
    else if(50<=x<60)
        printf("\n\ny=%f",y=30-3*(x-50));
         printf("\n\n是否继续?\t是:选<y>;\t否:选<n>!\n\n请选择:\n");

}

写回答 关注

1回答

  • 慕挽幻清
    2018-11-14 20:12:05
    已采纳

    运行如下:
    (20>x)判断,如果正确那么结果为1,错误为0。
    1或0永远大于等于0,所以只能执行第一个if中的语句。
    建议改成 ( x>=0&&20>x)
    后面的也是这格式。

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926028 学习 · 20793 问题

查看课程

相似问题