我目前正在为Visual Basic做作业。作业是显示仅奇数1-9的平方值。我必须使用For Next来执行赋值所指定的操作。我不想要答案,而是要指向正确的方向。这是我的代码,目前它只显示9的平方值,但不会显示其他奇数的平方值。我做了几个教程,但我无法弄清楚为什么它不能继续循环。
Public Class MainForm
Private Sub exitButton_Click(sender As Object, e As EventArgs) Handles exitButton.Click
Me.Close()
End Sub
Private Sub displayButton_Click(sender As Object, e As EventArgs) Handles displayButton.Click
'Start/end values and retainer for the values
Dim startVal As Integer
Dim endVal As Integer
Dim squareVal As Integer
startVal = 1
endVal = 9
'For loop to separate the odd and even numbers to square the odd numbers.
For _val As Integer = startVal To endVal Step 1
If _val Mod 2 <> 0 Then
squareVal = _val * _val
squaresLabel.Text = squareVal.ToString() & ControlChars.NewLine
_val += 1
Else
squaresLabel.Text = _val.ToString() & ControlChars.NewLine
_val += 1
End If
Next _val
End Sub
End Class
答案 0 :(得分:2)
每次通过循环时,您都会覆盖存储在squaresLabel中的文本。查看赋值语句:
squaresLabel.Text = squareVal.ToString() & ControlChars.NewLine
答案 1 :(得分:0)
我认为你只是重复计算而不是实际输出每个值。所以我建议你定义一个数组并将它们存储在其中。同时为每个值进行故障排除。希望它有所帮助。