我想用一个按钮和文本框进行数学运算,当输入文本框操作像25 + 5 + -10 + 7并按下按钮显示结果 我正在尝试这样做但是我不能。 在此代码中,我为每个字符在文本框中,我想存储25在firstvalue参数和+在op参数和5在第二个值参数 并使操作25 + 5 = 30并将其存储在firstvalue参数和存储+ - 在op ,第二个值为10并进行操作,将它存储在第一个值中......等等直到字符串的长度。 但我不知道在哪里以及如何存储第二值我想用一个按钮进行数学运算C#
private void button1_Click(object sender, EventArgs e)
{
string allValue = textBox1.Text;
int firstValue=0;
int secondValue=0;
string first = string.Empty;
string op = string.Empty;
foreach (char item in allValue)
{
if (char.IsNumber(item))
{
first += item;
}
else if(item=='+' || item=='-' || item=='*' || item=='/')
{
firstValue = Int32.Parse(first);
op += item;
first = "";
switch (op)
{
case "+":
firstValue = firstValue + secondValue;
break;
case "-":
firstValue = firstValue - secondValue;
break;
case "+-":
firstValue = firstValue +- secondValue;
break;
case "*":
firstValue = firstValue * secondValue;
break;
case "/":
firstValue = firstValue/secondValue;
break;
}
}
}
MessageBox.Show(firstValue.ToString());
}
有些图书馆(可能在线的例子)会使这个问题变得非常琐碎。 –
NCalc库是一个:http://ncalc.codeplex.com/ –
这种方法似乎有很多问题,它似乎...主要是,它是一个foreach循环,盲目循环通过这意味着它不接受统计操作顺序。 –