使用js设计一个程序,使用一个数组,prompt连续接收八门课程的成绩用逗号隔开,然后在页面上将这八门课的成绩从大到小排序,显示去掉最高分和最低分,再显示其总成绩和平均分,并列出大于85的成绩。(要求可以在dw运行)
时间: 2023-12-15 15:06:19 浏览: 101
以下是使用 JavaScript 实现的代码:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>成绩统计</title>
</head>
<body>
<h1>请输入八门课的成绩(用逗号隔开):</h1>
<script>
var scores = prompt("请输入八门课的成绩(用逗号隔开):").split(',').map(Number);
scores.sort(function(a, b) { return b - a; });
scores.pop();
scores.shift();
var sum = scores.reduce(function(a, b) { return a + b; }, 0);
var avg = sum / scores.length;
document.write('<p>排序后的成绩(去掉最高分和最低分):' + scores + '</p>');
document.write('<p>总成绩:' + sum + '</p>');
document.write('<p>平均分:' + avg.toFixed(2) + '</p>');
document.write('<p>大于85分的成绩:');
for(var i = 0; i < scores.length; i++) {
if(scores[i] > 85) {
document.write(scores[i] + ' ');
}
}
document.write('</p>');
</script>
</body>
</html>
```
这个程序会通过 `prompt` 弹出框连续接收八门课程的成绩,用逗号隔开。然后将输入的字符串转换成数字数组,并使用 `sort()` 方法将成绩从大到小排序。接着使用 `pop()` 和 `shift()` 方法去掉最高分和最低分,再使用 `reduce()` 方法计算总成绩。最后,使用 `toFixed()` 方法保留两位小数计算平均分,并使用循环遍历数组,输出大于 85 分的成绩。
阅读全文