老师帮我检查一下 还有什么需要改进的吗?

老师帮我检查一下 还有什么需要改进的吗?

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>成绩判断</title>
</head>
<body>
    <script>
    //补充代码
    var score=prompt("请输入学生成绩");
    if(score>=90 && score<=100){
     alert("优秀");
    }else if(score>=80 && score<=89){
     alert("良好");
    }else if(score>=70 && score<=79){
     alert("一般");
    }else if(score>=60 && score<=69){
     alert("及格");
    }else if(score>=0 && score<60){
     alert("不及格");
    }else{
     alert("您输入的成绩有误!!!");
    }
 </script>
</body>
</html>

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

3回答
慕移动3569406 2019-12-25 01:21:58

其实还有值得优化的地方, 如果成绩一开始就乱输了, 比如101, 但是按照你写的代码,它就要走一轮逻辑,也就是要判断这个数字在不在 优秀、良好、一般、及格、不及格 的范围, 然后才到最后的else。

其实可以一开始就判断学生录入成绩的这个数字是不是合法正确的,然后才来判断它属于什么等级。

这样万一输入的不是数字,还能提早拦截掉, 比如学生录入的是”student“这串字符, 那下面的代码就没办法按照预期进行判断了。

  • student就是else的情况,所以出来还是有误,如果先判断是否合法,需要就不能使用else了
    2020-03-28 13:17:25
一架小飞机 2019-10-08 10:52:05

刚才发现最后成绩有误那一栏没有写||

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>成绩判断</title>

</head>

<body>

    <script>

   //补充代码

   var score = prompt("输入学生成绩");

   if(score>=90 && score<=100){

       alert("优秀");

   }else if(score>=80 && score<=89){

       alert("良好");

   }else if(score>=70 && score<=79){

       alert("一般");

   }else if(score>=60 && score<=69){

       alert("及格");

   }else if(score<60 && score>0){

       alert("不及格");

   }else if(score<0 || score>100){

       alert("您输入的成绩有误");

   }

 </script>

</body>

</html>

  • else if(score<0 || score>100){ alert("您输入的成绩有误"); } 这个用 else 代替就可以了 这样的话 输入非数字也一样判断
    2019-10-23 14:19:45
Miss路 2019-06-02 16:22:22

同学,你好。

你实现的可以,继续加油!

祝学习愉快!

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师