在VB编程中,计算学生的平均分可以通过以下几种方法实现:
方法一:使用循环和数组
输入学生人数和课程数
```vb
Dim Avg() As Double
n = Val(InputBox("输入学生人数N="))
M = Val(InputBox("输入课程数M="))
ReDim Avg(n)
```
输入每个学生的成绩并计算总分
```vb
For i = 0 To n - 1
Sum = 0
For j = 0 To M - 1
D = Val(InputBox("输入第 " & (i + 1) & " 位同学的科目 " & (j + 1) & " 的成绩:"))
Sum = Sum + D
Next j
Avg(i) = Sum / M
Next i
```
输出平均分
```vb
For i = 0 To n - 1
Print Avg(i);
Next
```
方法二:使用字符串分割和数组
输入学生成绩并分割成字符串数组
```vb
Dim FF() As String
FF = Split(Text1.Text, ",")
```
转换字符串数组为数字数组并计算总分
```vb
Dim HJ As Long
RS = UBound(FF) + 1 '人数
For i = 0 To UBound(FF)
HJ = HJ + Val(FF(i))
Next
```
计算平均分并显示结果
```vb
MsgBox "人数为" & RS & " 平均分" & Format(HJ / RS, "0.00")
```
方法三:使用循环和变量
输入学生人数
```vb
Dim aver As Single, sun As Integer
n = InputBox("请输入学生个数!")
```
输入每个学生的成绩并计算总分
```vb
For i = 1 To n
score = InputBox("请输入" & i & "个学生的成绩")
sun = sun + score
Next i
```
计算平均分并显示结果
```vb
aver = sun / n
Print n & "学生的平均数是:"; aver
```
方法四:使用函数计算平均值
定义计算平均值的函数
```vb
Function ave(ByVal a As Double, ByVal b As Double, ByVal c As Double) As Double
ave = (a + b + c) / 3
End Function
```
输入三个成绩并计算平均值
```vb
Text4 = ave(Val(Text1), Val(Text2), 10)
```
建议
方法一和方法三 适用于需要输入多个学生成绩的情况,且可以灵活调整学生人数和课程数。
方法二适用于从文本框中直接输入多个成绩的情况,适合简单的成绩输入和显示。
方法四适用于只需要计算三个成绩的平均值的情况。
根据具体需求选择合适的方法即可。