我有這個程序,我不能得到它輸出我的輸入數字以及正確的點數以及相應的年級。由於某種原因,我的輸入值不會顯示,我的Chr(149)將不能正確輸出
實施例用於輸出應爲:
高等級********* 94
低品位******* 75
範圍** 19
平均***** *** 85
用「*」代表點是等級10
但由於某種原因,我得到** 0.00對所有我的價值觀的分歧。
Private Sub btnStats_Click(sender As Object, e As EventArgs) Handles btnStats.Click
If DataOk() Then
Dim max, min, sum As Double
Dim dots As String = ""
lstOutput.Items.Clear()
lstOutput.Items.Add("Student Letter Grade Summary")
lstOutput.Items.Add("Course - " & txtCourse.Text)
lstOutput.Items.Add("Semester - " & txtSemester.Text)
DisplaySummary(dots, max, min, sum)
ProcessSummary(max, min, sum)
End If
End Sub
Sub ProcessSummary(ByRef max As Double, ByRef min As Double, ByRef sum As Double)
Dim grade As Integer
min = 0
max = 100
For i As Integer = 0 To lstGrade.Items.Count - 1
grade = CInt(lstGrade.Items(i))
If grade > min Then
min = grade
End If
If grade < max Then
max = grade
End If
sum += grade
Next
End Sub
Sub DisplaySummary(ByRef dots As String, ByRef max As Double, ByRef min As Double, ByRef range As Double)
lstOutput.Items.Clear()
lstOutput.Items.Add("High grade " & " " & LineOfDots(CType(max/10, String)) & max.ToString("n2"))
lstOutput.Items.Add("Low grade " & " " & LineOfDots(CType(min/10, String)) & min.ToString("n2"))
lstOutput.Items.Add("Range " & " " & LineOfDots(CType(max - min/10, String)) & (max - min).ToString("n2"))
lstOutput.Items.Add("Average " & " " & LineOfDots(CType(max + min/10, String)) & ((max + min)/2).ToString("n2"))
End Sub
Function LineOfDots(ByVal dots As String) As String
For i As Integer = 1 To lstGrade.Items.Count - 1
LineOfDots &= Chr(149)
Next
Return LineOfDots
End Function
嗯。如果你在'DisplaySummary()'之前調用'ProcessSummary()',它可能會有所作爲... ... –
* facepalm *好的,修正了起訴沒有出現的成績,但正確的點數沒有出現。擁有兩套眼睛總是更好。不過謝謝你! – Kyle