问答详情
源自: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 date=new Date();

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

   document.write(date.getFullYear()+"年");

   document.write(date.getMonth()+"月");

   document.write(date.getDate()+"日");

   document.write(week[date.getDay()]+"<br/>");


//定义数组对象,给每个数组项赋值

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

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

document.write(scoreStr.split(":")+"<br/>");

 var n=0;

 var sum=new Array();

 sum=[87,81,97,76,74,94,90,76,64,76];

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

    var n+=sum[i];

}

document.write(n/sum.length);

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

  



</script>

</head>

<body>

</body>

</html>


提问者:qq_后来_43 2018-09-06 16:33

个回答

  • 慕仰6284726
    2018-09-06 22:13:35

    for循环里面var n+=sum[i],去掉var,变量n在前面已经定义过了,而且即使前面没定义,这样写应该也不对,从语法上讲,你声明了n变量之后没有初始化,直接就用来做计算应该就是有问题的;从逻辑上来讲,这样相当于for循环每一次循环都会重新声明一个n变量,也做不到累加的效果。