试图创建一个搜索数组,但它不会在vb中退出循环

时间:2014-10-31 17:19:28

标签: arrays vb.net loops search

为项目创建一个Hangman游戏,这个bug出现了。 storeWord值包含单词test in,其中t位于第一个框中,e位于第二个框中,依此类推。当guess = t时,它显示正确但继续不停止。

这是我的代码;

            Do Until i = Len(targetWord)
                i = 1
                If guess = storeWord(i) Then
                    Console.WriteLine("Correct")
                    correctCount = correctCount + 1
                End If
                i = i + 1
            Loop

我希望循环在搜索整个数组时停止,单词测试的长度,但是当我运行它时它不会进入循环。 救命 感谢

1 个答案:

答案 0 :(得分:1)

您将i设置为1。

       Do Until i = Len(targetWord)
            i = 1 ' <-- the culprit.
            If guess = storeWord(i) Then
                Console.WriteLine("Correct")
                correctCount = correctCount + 1
            End If
            i = i + 1
        Loop

将i的初始化移到Do循环之外。

         i = 1
         Do Until i = Len(targetWord)
            If guess = storeWord(i) Then
                Console.WriteLine("Correct")
                correctCount = correctCount + 1
            End If
            i = i + 1
        Loop