import java.util.Scanner; import java.util.Scanner; public class ch35 { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("请输入一个百分制成绩"); int a = input.nextInt(); String chengji = ""; switch (a){ case 60: chengji = "及格"; break; case 80: chengji = "良好"; break; case 90: chengji = "优秀"; break; } System.out.print("成绩" + chengji); } }
switch条件做一下处理,除以10就可以少很多case语句了;正确处理代码如下:
import java.util.Scanner;
public class switch用法 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入一个百分制成绩");
int a = input.nextInt();
String chengji = "";
switch (a/10) {
case 6:
chengji = "及格";
break;
case 7:
case 8:
chengji = "良好";
break;
case 9:
case 10:
chengji = "优秀";
break;
default:
chengji = "不及格";
break;
}
System.out.print("成绩" + chengji);
}
}
题主switch用法遇到什么问题,可以描述清楚点吗
switch意思是,你括号里a的值带入里面找有没有匹配的case值,找到的话就执行值冒号后面的语句直到遇到break结束为止,找不到对应case就执行default,假如没有default则switch结束
switch(a)是一个多分支选择结构,和下面的case进行匹配,你这里写了60分80分和90分三种情况,匹配三种情况之一,就执行case里面的语句。
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632