手动输入班级人数,输出班上每个同学的成绩存到数组,,计算出数组中的最大值,最小值,平均值和总和用JS中的一维数组怎么实现
时间: 2024-09-26 12:07:47 浏览: 34
c代码-编程实现:输入10个学生的6门课成绩,分别求出每个学生的平均成绩。
5星 · 资源好评率100%
在JavaScript中,你可以按照以下步骤来实现这个功能:
1. **手动输入班级人数**:
首先,你需要获取用户输入的班级人数。这通常通过`prompt()`函数完成,例如:
```javascript
let classSize = parseInt(prompt("请输入班级人数:"));
```
2. **创建成绩数组**:
创建一个一维数组,长度等于班级人数,用于存储每个同学的成绩:
```javascript
let scores = new Array(classSize);
```
3. **输入每个同学的成绩**:
循环遍历数组,让用户逐次输入成绩并添加到数组中:
```javascript
for (let i = 0; i < classSize; i++) {
scores[i] = parseInt(prompt(`请输入第 ${i + 1} 位同学的成绩:`));
}
```
4. **计算最大值、最小值、平均值和总和**:
- **最大值**:可以使用`Math.max()`和数组的`reduce()`方法:
```javascript
let maxScore = Math.max(...scores);
```
- **最小值**:类似地,使用`Math.min()`:
```javascript
let minScore = Math.min(...scores);
```
- **平均值**:需要遍历数组求和后再除以人数:
```javascript
let sum = scores.reduce((a, b) => a + b, 0); // 使用reduce累加
let average = sum / scores.length;
```
- **总和**:上面已经计算了,即`sum`变量。
5. **输出结果**:
最后,将计算的结果打印出来:
```javascript
console.log(`最大值:${maxScore}`);
console.log(`最小值:${minScore}`);
console.log(`平均分:${average.toFixed(2)} 分`); // `toFixed(2)`保留两位小数
console.log(`总和:${sum}`);
```
完整代码示例:
```javascript
let classSize = parseInt(prompt("请输入班级人数:"));
let scores = new Array(classSize);
for (let i = 0; i < classSize; i++) {
scores[i] = parseInt(prompt(`请输入第 ${i + 1} 位同学的成绩:`));
}
let maxScore = Math.max(...scores);
let minScore = Math.min(...scores);
let sum = scores.reduce((a, b) => a + b, 0);
let average = sum / scores.length;
console.log(`最大值:${maxScore}`);
console.log(`最小值:${minScore}`);
console.log(`平均分:${average.toFixed(2)} 分`);
console.log(`总和:${sum}`);
```
阅读全文