所以我在C#中的Windows窗体程序中猜测单词游戏,其中一个要求是我必须包含一个评分系统。 (从100分开始,每次错误的字母被猜到从总数100中减去10分,如果你猜对了,则总数增加10分。)除了积分之外我还有其他一切工作。我真的可以使用一些帮助来解决这个问题。介意一下?“
public void CheckLetter(string word)
{
lblWord.Text = "";
corLetter += word[0];
score = score;
int amountToUpdate = 0;
score = score + amountToUpdate;
for (int i = 0; i < mysteryWord.Length; i++)
{
count = 0;
for (int j = 0; j < corLetter.Length; j++)
{
if (corLetter[j]== mysteryWord[i])
{
lblWord.Text += corLetter[j].ToString().ToUpper();
count++;
}
}
if (count == 0)
{
lblWord.Text += "_ ";
}
}
bool letterInWord = false;
for (int i = 0; i < word.Length; i++)
{
if (rtbGuess.Text == mysteryWord[i].ToString())
{
letterInWord = true;
}
}
score = score + amountToUpdate;
lblPoints.Text = (score).ToString();
if (!letterInWord)
{
lblPoints.Text = (score = score - 10).ToString();
}
}`
答案 0 :(得分:2)
对于比分究竟不起作用的是什么?我只是快速写了一些代码,并且得分很好。我看到你的代码中有很多东西我不明白,比如:
score = score;
int amountToUpdate = 0;
score = score + amountToUpdate;
一开始,并且:
score = score + amountToUpdate;
lblPoints.Text = (score).ToString();
最后。你的一些变量名称有帮助,比如rtbGuess告诉我猜测是在富文本框中输入的。
无论如何,您的代码会检查字母是否不正确,但如果字母不正确则不会:
if (!letterInWord)
{
lblScore.Text = (int.Parse(lblScore.Text) - 10).ToString();
}
else
{
lblScore.Text = (int.Parse(lblScore.Text) + 10).ToString();
}