【发布时间】:2018-08-05 00:30:49
【问题描述】:
我在下面制作了一个数学游戏程序,但是当按下开始按钮时它不起作用...转换区域(显示 p、q、r 的位置)出现错误消息; “在 mscorlib.dll 中发生了“System.FormatException”类型的未处理异常 附加信息:输入字符串的格式不正确。” 如何修改我的代码?
private void buttonStart_Click(object sender, RoutedEventArgs e)
{
Random random = new Random();
int a = random.Next(0, 100);
int b = random.Next(0, 100);
int c = random.Next(0, 100);
int d = random.Next(0, 100);
int f = random.Next(0, 100);
int g = random.Next(0, 100);
labelOne.Content = "1." + a + " + " + b + " = ";
labelTwo.Content = "2." + c + " - " + d + " = ";
labelThree.Content = "3." + f + " * " + g + " = ";
int score = 0;
int p = int.Parse(textBoxOne.Text);
int q = int.Parse(textBoxTwo.Text);
int r = int.Parse(textBoxThree.Text);
if (p == a + b)
{
score = score + 1;
}
else score = score;
if (q == c - d)
{
score = score + 1;
}
else score = score;
if (r == g * f)
{
score = score + 1;
}
else score = score;
}
【问题讨论】:
-
你很可能给
Parse一个非数字字符串。您需要在解析输入之前清理/检查输入,或捕获异常。 -
代码运行时
textBoxOne.Text、textBoxTwo.Text和TextBoxThree.Text的内容是什么? -
请添加语言标签
-
@TZHX 用户可以在这些文本框中输入每个公式的答案。
-
@LưuVĩnhPhúc 好吧,我做到了
标签: c# visual-studio math