为了防止输入错误,规范编码
应该使用 int.TryParse(string,out int) 函数。
int a,b;
bool a是数字 = int.TryParse(label1.Text, out a);
bool b是数字 = int.TryParse(label3.Text, out b);
if (a是数字 & b是数字) {
if (a + b == c){
}
} else {
label1.Text = "";
label3.Text = "";
}
应该是你else判断有问题,数字的话,你从输入框里面获取的那个数字你最好进行数字类型转换int类型,然后比较。另外,你if语句和else语句都有声明sound,最好声明放外面,里面直接赋值
if (a + b == c)
这里有问题,如果是数字相加,那么应该将字符类型转换为数字
if (a + b == c)
等价于(重载为)
if (string.Concat(a,b)== c)
是a,b字符串拼接后返回的字符串跟字符串c比较,不是数字比较,需要转类型
字符串比较要用equals
if ((a+b).Equals(c)){
}else{
}