【问题标题】:Visual Basic Programming freezing when using do while loop使用 do while 循环时 Visual Basic 编程冻结
【发布时间】:2017-11-09 20:31:21
【问题描述】:

我有一个学校的 VB 项目,它需要使用循环。我正在尝试在我的计算机上对其进行测试,但是每次我在程序上按“确定”时,程序都会冻结,并且没有任何内容添加到列表框中。唯一新出现的是列表框上的滚动条。

    Dim counter As Integer = 0

    If total = 5 Then
        Do While counter < 5
            Marks.Items.Add(studentNumber)
        Loop
    End If

【问题讨论】:

  • 如何增加循环内的计数器:counter += 1 ;-)。 total 将如何达到 5?它在哪里定义?由于这不是已发布代码的一部分,因此我们无法提供任何建议,这可能是您的问题的一部分。
  • 哦,天哪,我完全忘记了这一点。修好了,谢谢。我没有包含包含总计值的其余代码,但问题已解决
  • 你在哪里增加/实例化总数?
  • 这很简单,而且在刚接触编程语言时经常会发生这种情况;-)。您介意我创建一个答案以便可以关闭问题并且不会保持打开状态吗?否则,您可以自己动手。
  • 是的,您可以创建一个答案,谢谢!

标签: vb.net basic


【解决方案1】:

你必须增加计数器

Dim counter As Integer = 0

Do While counter < 5
   Marks.Items.Add(studentNumber)
   counter += 1
Loop

如果要在列表中添加 5 个项目,则无需使用 If 语句,因为 while 循环将执行 5 次

【讨论】:

  • 您甚至可以使用counter += 1 代替counter = counter + 1 来缩短一点。
【解决方案2】:

递增计数器将解决您在 do/while 循环中遇到的问题,但我还建议您可能更适合仅使用 for 循环,因为这正是它们的用途。

For i As Integer = 1 to 5
    Marks.Items.Add(i) 'Assuming your counter == studentNumber.
Next

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-21
    • 2016-03-27
    • 1970-01-01
    相关资源
    最近更新 更多