8楼的没错.我也查了相关资料,scanf出错后就不在执行,且a[i]的值不变
LZ的程序中并不是再也不执行了.只不过scanf的缓存区里还有一个 回车
在其后加getchar()LZ的程序虽然不是死循环.但运行有错误
while(!scanf("%d", &a[i]))
{
getchar();
printf("输入错误,请重新打分\n");
}
只有加这个了!

[glow=255,violet,2]闭关修炼ing...[/glow] [FLASH=360,180]http://www./chinaren.swf[/FLASH]