一个班六个人,学号语文数学英语,接收成绩(不接受学号),输出学号成绩,总分平均分,按总分排序(原生JS)
Posted lsqbk
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一个班六个人,学号语文数学英语,接收成绩(不接受学号),输出学号成绩,总分平均分,按总分排序(原生JS)相关的知识,希望对你有一定的参考价值。
<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> <body> </body> </html> <script> //一个班六个人,学号语文、数学、英语,接收成绩(不接受学号),输出学号成绩,总分、平均分,按总分排序 grade(); function grade(){ var arr = []; //定义一个数组,用来存输入的元素 var n = parseInt(prompt("请输入人数")); //用来确定循环次数 var classs = ["语文成绩","数学成绩","英语成绩"]; //定义一个新的数组用来确定数组中的数组元素 for(var i = 0 ;i<n;i++){ //多少个人循环多少次 var brr = []; //定义一个新的二维数组 brr[0] = prompt("请输入"+(i+1)+"姓名"); // for(var j = 1;j<=classs.length;j++){ brr[j] = parseInt(prompt("请输入"+brr[0]+"的"+classs[j-1])); } arr[i] = brr; //每循环一次在数组的后面添加一个元素(数组),并赋值 } // console.log(arr); //把平均分和总分添加到数组后面 for(var i = 0; i<arr.length; i++){ //遍历这个数组 var zf = arr[i][1]+arr[i][2]+arr[i][3]; // 给总分定义 arr[i][arr[i].length] = zf/classs.length; //每循环一次在这个数组后面添加一个(总分除以这个新的数组的长度得出平均分)数组元素 arr[i][arr[i].length] = zf; ////每循环一次在这个数组后面添加一个元素(总分)数组元素 } console.log(arr); // 下降排序 按照总分排序 for(var i =0;i<arr.length;i++) { for(var k = 0; k < arr.length-i-1; k++){ if(arr[k+1][5]>arr[k][5]){ var s = arr[k]; arr[k]=arr[k+1]; //从这开始交换位置 arr[k+1]=s; } } } //加入到表格中 var str = `<table width="50%" border="1px"><tr> <tr> <th>学号</th> <th>语文</th> <th>数学</th> <th>英语</th> <th>平均分</th> <th>总分</th> </tr>`; for(var i = 0; i<arr.length; i++){ str += `<tr>`; for(var j = 0 ; j<arr[i].length;j++){ str += ‘<td>‘+arr[i][j]+‘</td>‘; } str += `</tr>`; } str += `</table>`; console.log(arr); document.write(str); } </script>
以上是关于一个班六个人,学号语文数学英语,接收成绩(不接受学号),输出学号成绩,总分平均分,按总分排序(原生JS)的主要内容,如果未能解决你的问题,请参考以下文章