问答详情
源自:7-23 编程练习

一个输出平均成绩的练习,请大家帮忙找找错误

<!DOCTYPE  HTML>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>系好安全带,准备启航</title>

<script type="text/javascript">

  //通过javascript的日期对象来得到当前的日期,并输出。
  var mydate=new Date();
  var year=mydate.getFullYear();
  var month=mydate.getMonth()+1;
  var date=mydate.getDate();
  var week=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];
  var day=week[mydate.getDay()];
  
  //成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦
  var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
 var scoreArr=scoreStr.split(";");
 var sum=0;
 var avr;
 for(var i=0;i<scoreArr.length;i++){
     var pos=scoreArr[i].indexOf(":");
     var score=scoreArr[i].substr(pos+1);
     var sum+=parseInt(score);
 }
 avr=Math.round(sum/scoreArr.length);

  //从数组中将成绩撮出来,然后求和取整,并输出。
  document.write(year+"年"+month+"月"+date+"日"+"&nbsp;"+day+"--班级平均分为:"+avr);


</script>
</head>
<body>
</body>
</html>


提问者:飞儿1981 2016-12-21 14:55

个回答

  • Hero1986
    2016-12-21 16:24:14
    已采纳

    1.substr ->substring,2.变量定义放到外面

  • Smile格调2016
    2016-12-21 16:18:46

    <script type="text/javascript">

      //通过javascript的日期对象来得到当前的日期,并输出。  

      var mydate=new Date();

      var year=mydate.getFullYear();

      var month=mydate.getMonth()+1;

      var date=mydate.getDate();

      var week=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];

      var day=week[mydate.getDay()];

      //成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦

      var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";

      var scoreArr=scoreStr.split(";");

      var sum=0;

      for(var i=0;i<scoreArr.length;i++){

        var score=parseInt(scoreArr[i].substring(3));

        sum+=score;

      }

      //从数组中将成绩撮出来,然后求和取整,并输出。

       document.write(year+"年"+month+"月"+date+"日"+"&nbsp;"+day+"--班级总分为:"+sum);

    </script>

  • Hero1986
    2016-12-21 15:57:37

    看你的24和30行