-2

我正在 Windows 窗体 Visual Basic 中运行一个程序,我试图制作多个计数器

这是我的代码:

If txtAnswer.Text = nMathSum Then
        nCount = nCount + 1
        lblCorrect.Text = nCount
    ElseIf txtAnswer.Text <> nMathSum Then
        nIount = nIount + 1
        lblIncorrect.Text = nIount
    End If

    If txtAnswer.Text = nMathDiff Then
        nCount = nCount + 1
        lblCorrect.Text = nCount
    ElseIf txtAnswer.Text <> nMathDiff Then
        nIcount = nIcount + 1
        lblIncorrect.Text = nIout
    End If

它假设计算我正确和错误回答的次数

总和计数器工作正常,但差值计数器有问题。当我输入正确答案时,它会转到不正确的标签。

4

2 回答 2

0

您在 seconf 中的nIountas拼写错误 也与最后一行一样。将其更正为:nIcountElseifnIout

ElseIf txtAnswer.Text <> nMathDiff Then 
    nIount = nIount + 1 
    lblIncorrect.Text = nIount 
End If 

这是假设第一次出现 ( nIount) 是正确的拼写。

于 2012-04-06T16:45:53.497 回答
0

txtAnswer 不太可能同时匹配总和和差值。因此,在您的代码中,您将始终至少有一个不正确。

您是否有某种方法可以知道 txtAnswer 是否应该匹配总和或差 - 如果是,请在检查答案之前检查一下。

编辑(解释我的意思):

If operation = "+" Then
    If txtAnswer.Text = nMathSum Then
        nCount = nCount + 1
        lblCorrect.Text = nCount
    ElseIf txtAnswer.Text <> nMathSum Then
        nIcount = nIcount + 1       ' corrected this line to use nIcount
        lblIncorrect.Text = nIcount ' corrected this line to use nIcount
    End If
Else
    If txtAnswer.Text = nMathDiff Then
        nCount = nCount + 1
        lblCorrect.Text = nCount
    ElseIf txtAnswer.Text <> nMathDiff Then
        nIcount = nIcount + 1
        lblIncorrect.Text = nIcount ' corrected this line too
    End If
End If

其中 operation 是设置为“+”或“-”的变量,具体取决于用户应该提供总和还是差值。

于 2012-04-06T16:43:07.667 回答