C中的开关箱多量程
分数>=75为A级。C中的开关箱多量程,c,switch-statement,C,Switch Statement,分数>=75为A级。 我可以知道如何编辑案例7,以便它可以检测到75及以上的A级。 谢谢大家! 如果计划仅使用gcc,则可以使用开关范围: 对于此任务,只需使用if语句即可 switch (mark) { case 75 ... 100: printf("The Grade is A.\n"); break; case 70 ... 74: printf("The Grade is B.\n"); break
我可以知道如何编辑案例7,以便它可以检测到75及以上的A级。
谢谢大家! 如果计划仅使用gcc,则可以使用开关范围:
对于此任务,只需使用
if
语句即可
switch (mark) {
case 75 ... 100:
printf("The Grade is A.\n");
break;
case 70 ... 74:
printf("The Grade is B.\n");
break
/*....*/
}
if(标记>=75&&mark<100){
//A
}否则如果(标记>=70和标记<75){
//B
}else{/*无效*/}
为什么不使用if
语句?开关((标记+5)/10)
?有什么?五到六个不同的等级加上无效的输入。编写一个返回等级的函数,并在函数中使用simpleif
s。由于if
的主体会立即返回,因此无需使用if
/else
链。如果您不关心可移植性,请使用gcc开关盒范围扩展
switch (mark) {
case 75 ... 100:
printf("The Grade is A.\n");
break;
case 70 ... 74:
printf("The Grade is B.\n");
break
/*....*/
}
if (mark >= 75 && mark < 100) {
//A
} else if (mark >= 70 && mark < 75) {
//B
} else { /* Invalid */ }