link147
2019-09-06 15:58
#include <stdio.h>
int main()
{
int score = 87; //考试分数为87分
switch(score)
{
score/=10; /*想想以下代码为什么用这种方式;
这种方式的好处?*/
case 10:
case 9:
printf("等级A");
break;
case 8:
printf("等级B");
break; //这里是不是缺点什么?
case 7:
case 6:
printf("等级C");
break; //这里是不是缺点什么?
default:
printf("等级D");
break;
}
return 0;
}
score/=10;应该在switch语句前面。
你的score/=10 放错位置了
你应该直接放在 int score=87;下面
想想你switch(score)中score指的是哪个score?是score=87的?还是score=score/10的?(根据你的代码score=87,不是case10,9,8,7,6.所以只能从default出来也就是等级d了,我尽量去说清楚了,你慢慢理解哈哈哈)。解决办法score=score/10写在switch的前面一行
+1,脑壳痛,甚至有点头皮发凉
C语言入门
926020 学习 · 20793 问题
相似问题