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

可参考的答案

<script type="text/javascript">

//=============输出日期============== 

//date存放当前的时间数据

//year、month、day、weekNum分别存放从date中提取的年、月、日、星期数

//由于get.Month()返回值是0-11,所以需要加1,使月份正常

  var date = new Date();  

  var year=date.getFullYear();  

  var month=date.getMonth()+1;  

  var day=date.getDate();

  var weekNum=date.getDay();

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

  document.write(year + '年' + month + '月' + day + '日 &nbsp;' + week[weekNum-1] + '&nbsp;');

  document.write('&nbsp;' + '-----' + '&nbsp;&nbsp;');


//=============输出成绩==============

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

  //将原数据按分号";"分割,并赋值至原数组中

  //sum用来存放成绩总和

  scoreStr=scoreStr.split(';');

    var sum=0 ;

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

    //再次将每个数组中的数据按":"分割开,再取其中的成绩

    //但是由于成绩是字符串,所以需要通过parseInt()将其转化为可计算的数值

    sum +=parseInt(scoreStr[i].split(':')[1]);

  }

  document.write("班级总分为:"+sum + '<br />');


//=============以下是其他功能的实现==============  

//平均分

  var average = sum/scoreStr.length;

  document.write("班级平均成绩:"+average+'<br/>');

//还可以求最高分

  var max = ["null",0];

  var temp;

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

    temp=parseInt(scoreStr[i].split(':')[1]+'');

    if(max[1]<temp){

        max[0]=scoreStr[i].split(':')[0];

        max[1]=temp;

    }

  }

  document.write("班级最高分是“"+ max[0] + "”的"+max[1]+"分。");

</script>


提问者:戴望舒 2019-10-16 16:47

个回答

  • qq_十三_5
    2019-11-18 10:25:07

    <!DOCTYPE  HTML>

    <html >

    <head>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

    <title>系好安全带,准备启航</title>


    <script type="text/javascript">


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

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

      var date = new Date();

      document.write(date.getFullYear() + "年" + date.getMonth() + "月" + date.getDay() + "日 " + week[date.getDay()] + "<br/>");

      

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

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

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


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

      var scoreTotal = 0;

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

          var temp = msg[i].split(":");

          scoreTotal += parseInt(temp[1]);

      }

      document.write(scoreTotal +"<br/>");

      document.write(Math.round(scoreTotal / msg.length));


    </script>

    </head>

    <body>

    </body>

    </html>