PHP用二维数组计算五位同学平均成绩
时间: 2024-09-25 17:12:11 浏览: 16
在PHP中,你可以使用二维数组来存储每个同学的姓名及其分数,然后通过遍历数组计算所有同学的总分,最后除以同学数得到平均成绩。以下是一个简单的示例:
```php
// 假设我们有一个二维数组,其中包含5位同学的成绩
$students = array(
array("name" => "小明", "score" => 85),
array("name" => "小红", "score" => 90),
array("name" => "小亮", "score" => 92),
array("name" => "小华", "score" => 87),
array("name" => "小李", "score" => 88)
);
// 计算总分
$totalScore = 0;
foreach ($students as $student) {
$totalScore += $student["score"];
}
// 计算平均成绩并保留两位小数
$averageScore = number_format($totalScore / count($students), 2);
echo "五位同学的平均成绩是:" . $averageScore . " 分.";
相关问题
PHP用二维数组计算五位同学四门课程的平均成绩
在PHP中,你可以使用二维数组来存储每个同学每门课程的成绩,然后通过循环遍历数组来计算所有同学四门课程的平均成绩。这里是一个简单的示例:
```php
// 假设我们有如下的二维数组,代表五个同学的四门课程成绩
$students_scores = [
['张三', '数学', 85, 90],
['李四', '数学', 92, 87],
['王五', '数学', 88, 94],
['赵六', '数学', 90, 92],
['孙七', '数学', 86, 91], // 这里只有一门课,假设另外一门课成绩是缺失
];
// 计算平均成绩
$total_scores = 0;
$total_students = count($students_scores);
// 遍历二维数组,累加每个同学每门课程的成绩
foreach ($students_scores as $student) {
list($name, _, $math_score, $other_score) = $student; // 使用逗号分隔获取姓名和成绩
$total_scores += $math_score + $other_score;
}
// 如果有同学少于四门课程,需要处理这种情况
if ($total_students < 5 || !isset($students_scores[4][2])) {
echo "有些同学的成绩数据不足,无法计算平均成绩";
} else {
$average_score = $total_scores / ($total_students * 4);
echo "五位同学四门课程的平均成绩是:{$average_score}";
}
用二维数组储存本寝室同学的各科成绩并计算每位同学所学课程平均分
为了用二维数组储存寝室同学的各科成绩并计算每位同学的平均分,你可以按照以下步骤操作:
1. 定义二维数组:假设我们有n位同学,每人都有m门课程。例如,如果寝室有4人,每人体育、数学、英语、物理四门课,那么数组可以设置为`score[][] = new int[4][4]`。
2. 填充数组:将每个同学的成绩填入对应的位置。例如,对于第一位同学的成绩,你可以像这样存储:`score[0][0] = 运动分数`, `score[0][1] = 数学分数`, 等等。
3. 计算平均分:对于每位同学,你需要遍历他的所有成绩,并累加起来除以课程数得到平均分。例如,对第i位同学的平均分计算可以表示为:
```java
double averageForStudent_i = 0;
for (int j = 0; j < m; j++) {
averageForStudent_i += score[i][j];
}
averageForStudent_i /= m;
```
4. 最后,你可以创建一个新的数组或者数据结构(如Map),存储每位同学及其对应的平均分。
```java
Map<Integer, Double> studentAverageScores = new HashMap<>();
for (int i = 0; i < n; i++) {
studentAverageScores.put(i + 1, averageForStudent_i);
}
```