求平均分的方法取决于你使用的编程语言和数据结构。以下是几种常见编程语言中求平均分的方法:
1. 使用字典记录总分和人数
如果你需要计算多个班级的平均分,可以使用两个字典分别记录每个班级的学生人数和总分。以下是一个使用VBA的示例:
```vba
Public Sub dicAvg()
Dim dicA As Object, dicB As Object, i As Integer
Dim totalScore As Double, totalStudents As Integer
' 记录每个班级的总分
Set dicA = CreateObject("Scripting.Dictionary")
i = 2
Do Until Cells(i, 1).Text = ""
If Not dicA.Exists(Cells(i, 1).Text) Then
dicA.Add Cells(i, 1).Text, 0
End If
dicA(Cells(i, 1).Text) = dicA(Cells(i, 1).Text) + Cells(i, 3).Value
i = i + 1
Loop
' 记录每个班级的学生人数
Set dicB = CreateObject("Scripting.Dictionary")
i = 2
Do Until Cells(i, 1).Text = ""
If Not dicB.Exists(Cells(i, 1).Text) Then
dicB.Add Cells(i, 1).Text, 0
End If
dicB(Cells(i, 1).Text) = dicB(Cells(i, 1).Text) + 1
i = i + 1
Loop
' 计算每个班级的平均分
Dim key As Variant
For Each key In dicA.Keys
totalScore = totalScore + dicA(key)
totalStudents = totalStudents + dicB(key)
Next key
For Each key In dicA.Keys
dicA(key) = totalScore / totalStudents
Next key
End Sub
```
2. 使用结构体存储成绩并计算平均分
```c
include include struct student { int score; }; int average(int *p) { return (*p + *(p + 1) + *(p + 2)) / 3; } int main() { struct student stu1, stu2, stu3, stu4; int result1, result2, result3, result4; for (int k = 0; k < 3; k++) { stu1.score[k] = rand() % 100; stu2.score[k] = rand() % 100; stu3.score[k] = rand() % 100; stu4.score[k] = rand() % 100; } result1 = average(stu1.score); result2 = average(stu2.score); result3 = average(stu3.score); result4 = average(stu4.score); printf("The 1st student's score %d is %d\n", 1, stu1.score); printf("The 2nd student's score %d is %d\n", 2, stu2.score); printf("The 3rd student's score %d is %d\n", 3, stu3.score); printf("The 4th student's score %d is %d\n", 4, stu4.score); return 0; } ``` 3. 使用Python计算平均分 ```python def calculate_average(scores): return sum(scores) / len(scores) 示例输入 scores = [91, 92, 60, 65, 87, 100, 93, 97, 77, 65, 76, 100] 计算平均分 average_score = calculate_average(scores) print("平均分是:", average_score) ``` 4. 使用Excel公式计算平均分 如果你在使用Excel,可以使用