switch只能将一个表达式和一个具体值进行匹配,比如说grade等于90做什么,等于89做什么等等,不能做范围的判断。
如果这个问题强行用switch的话,你可以试着将范围转换为具体值的比较,比如:
switch(grade / 5)
{
case 20:
case 19:
case 18:
case 17: cout <<"A";break;
case 16:
case 15:
case 14: cout<< "B"; break;
case 13:
case 12: cout << "C"; break;
default: cout << "D";
}
这样写比较麻烦,还不如直接用if