请问这个程序哪里不对?(入门级)

问题遇到的现象和发生背景

想设计程序将成绩划分为ABC的

问题相关代码,请勿粘贴截图

#include<stdio.h>
int main()
{
int score;
scanf("%d",&score);

if(score>=90){
    printf("您的成绩为A");
}else if(80<=score<90){
    printf("您的成绩为B");
}else if(70<=score<80){
    printf("您的成绩为C");
}else {printf("您的成绩为D");
}

return 0;

}

运行结果及报错内容

输入45时输出为B

我的解答思路和尝试过的方法
我想要达到的结果

C语言的if语句不能写连续判断

#include<stdio.h>
int main()
{
    int score;
    scanf("%d",&score);
    
    if(score>=90){
        printf("您的成绩为A");
    }else if(80<=score && score<90){   //修改,或者else if(80<=score)
        printf("您的成绩为B");
    }else if(70<=score && score<80){   //修改,或者else if(70<=score)
        printf("您的成绩为C");
    }else {printf("您的成绩为D");
    }
    return 0;
}

img

不能使用连续的算数运算符,可以改成80<=score&&score<90
&&的意思是且,两边符合条件执行。