为什么变成了死循环
请前辈们看一下:
#include<stdio.h>
void main()
{
float score=101;
int panduan=0;
printf("Please input score:");
scanf("%f",&score);
while(((int)score>=0)&&((int)score<=100))
{
panduan=(int)score/10;
if(panduan>=10)
{
panduan=9;
}
switch(panduan)
{
case 9: printf("A");break;
case 8: printf("B");break;
case 7: printf("C");break;
case 6: printf("D");break;
default: printf("E");
}
putchar('\n');
scanf("%f",&score);
}
printf("Input error!Please input available number!");
putchar('\n');
}
首先输入:23,输出为E。
接着输入:R, 程序陷入死循环,一直输入E
调试可以看出,在第二个输入语句中,输入R时,R并没有传到score 中.
不知问题出在哪里?