qq_在心上_03182279
2016-05-30 09:21
外什么是case10:case9: 然后下面是case8: 再下面是case6:case7:
但是switch括号里面并没有score=score/10 对吧
这道题中,case 后面的数字是score(成绩)简化后的值
如何简化:score=score/10;
除以10以后0分至100分就会变成了0到10个数字,(因为:score为整型int,所以被除以后即使不为整数, 在再次赋值后也会自动把小数部分去掉),这样,90<=X<=100分就变成了9和10,80<=x<90的范围就变成了8, 60<=x<80的范围就变以了6和7 。这道题中score=score/10=8
所以case10就代表100分的情况,case9代表90多分,case8代表80多分,以此类推
case10:
case9:
printf("等级A");
break;
这代表90分(含90分)到100分的直接输出等级A
个人观点是score/=10的所有取值情况,即可以为10.9.8.7.6等、、但是我们需要的有效情况只是9.8.6,所以只有这几个取值时为有效输出,其他的可以空着不写。
case 后面加的常量表达式是指,switch后括号内的表达式可能出现的一种情况(当表达式取这个常量表达式时)
C语言入门
926020 学习 · 20793 问题
相似问题