为什么这个程序的等级对不上输入的值?

#include<stdio.h>
int main()
{
float a[10],t,sum=0.0,Avg=0.0;
int i,j;
for(i=0;i<10;i++)
scanf("%f",&a[i]);
for(j=0;j<=10;j++)
{
for(i=0;i<9-j;i++)
if(a[i]<a[i+1])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
}
for(i=0;i<10;i++)
{
sum=sum+a[i];
if(a[i]<=100&&a[i]>=90)
printf("%f\t,等级是A",a[i]);
else
if(a[i]<90&&a[i]>=80)
printf("%f\t,等级是B",a[i]);
else
if(a[i]<80&&a[i]>=70)
printf("%f\t,等级是C",a[i]);
else
if(a[i]<70&&a[i]>=60)
printf("%f\t,等级是D",a[i]);
else
if(a[i]<60&&a[i]>=0)
printf("%f\t,等级是E",a[i]);
else
printf("输入错误\n");
}
printf("平均值为%f",sum/10.0);
return 0;
}

没有对不上吧 他先排序 你再输出 按从大到小输出 你写的时候控制格式的\t也可以写最前面的 只改了你的输出语句

img