为什么输出总是c,请专家解答

#include <stdio.h>
int main()
{
float a;
scanf("%d",&a);
if(a>=90&&a<=100)printf("A");
else if(a>=60&&a<=90)printf("B");
else printf("C");
return 0;
}

scanf("%f",&a);

将变量a的类型改为int 就好了

float a;
scanf("%d",&a);
a是float类型,所以scanf函数中%d需要改成%f
或者float a;改成 int a;
两种方法都行。

a定义的类型不正确,应该用int