如何使用switch语句写出考试成绩的等级

   /*
      java的小菜鸟
      题目:
            1.系统接受一个学生的考试成绩,根据考试成绩输出等级。
            2.等级:
                    优:[90~100]
                    良:[80~90)
                    中:[70~80)
                    及格:[60~70)
                    不及格:[0~60)
            3.必须使用switch语句来写
   */

public class Switch{
    public static void main(String[ ] args){
                   //创建一个用户扫描器对象
    java.util.Scanner n = new java.util.Scanner(System.in);
                      //创建输出字符串提示信息
    System.out.print("请输入您的成绩:");
                  //创建i,接收用户信息

    int i = n.nextInt();//由于分数不一定时整数类型 所以重新赋值double类型
    double i = n.nextDouble(); 


    int zhi = i; //分出等级后的i赋值给zhi
    int zhi = (int)i;//因为最后要把“zhi”放入switch语句中,switch又只支持int和String类型。所以要实行double类型到int类型的强制转换

          

   //我准备使用if语句先把分数的范围划出来

    if (i < 0 || i > 100){
        System.out.println("您输入的分数不合法");
    }else if (i < 60){
        zhi = 1;   //当成绩在[0~60)时 zhi就为1 表示不及格
    }else if (i < 70){
        zhi = 2;   //当成绩在[60~70)时,zhi为2 表示及格
    }else if (i < 80){
        zhi = 3;        //当成绩在[70~80)时,zhi为3 表示中
    }else if (i < 90){
        zhi = 4;        //当成绩在[80~90)时,zhi为4 表示良    
    }else if (i <=100){
        zhi = 5;    //当成绩在[90~100)时,zhi为5 表示优
    }
  

    switch(zhi){
    case 1:
        System.out.println("不及格"); //当zhi为1时,输出字符串“不及格”
        break;                                //switch语句结束
    case 2:
        System.out.println("及格");  //当zhi为2时,输出字符串“及格”
        break;                              //switch语句结束
    case 3:
        System.out.println("中");   //当zhi为3时,输出字符串“中”
        break;                            //switch语句结束
    case 4:
        System.out.println("良");   //当zhi为4时,输出字符串“良”
        break;                            //switch语句结束
    case 5:
        System.out.println("优");  //当zhi为5时,输出字符串“优”
        break;                           //switch语句结束
    }
    }
}

 

怎么才能更加简洁的书写这个代码?

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值