输入一个运算表达式,输出答案
时间: 2024-10-01 21:12:59 浏览: 25
在C#中,如果你想让用户输入一个数学运算表达式并得到结果,你需要借助第三方库如`System.Numerics`(对于复杂计算)或者编写一个简单的解析器(如果表达式相对简单)。下面是一个简单的例子,我们使用`decimal`类型和`Math`类进行计算,并假设用户输入的是两个数字和一个加法运算符:
```csharp
using System;
class Program
{
static void Main(string[] args)
{
Console.Write("请输入一个表达式,格式为 'num1 运算符 num2'(例如 2 + 3): ");
string input = Console.ReadLine();
try
{
string[] parts = input.Split(' ');
decimal num1 = Convert.ToDecimal(parts[0]);
decimal num2 = Convert.ToDecimal(parts[2]);
char operatorChar = parts[1][0];
switch (operatorChar)
{
case '+':
Console.WriteLine($"结果: {num1 + num2}");
break;
case '-':
Console.WriteLine($"结果: {num1 - num2}");
break;
case '*':
Console.WriteLine($"结果: {num1 * num2}");
break;
case '/':
if (num2 != 0) // 避免除以零
Console.WriteLine($"结果: {num1 / num2}");
else
Console.WriteLine("错误: 除数不能为零");
break;
default:
Console.WriteLine("错误: 无效的运算符");
break;
}
}
catch (FormatException e)
{
Console.WriteLine("错误: 无法解析输入,请确保输入的是有效的数字和运算符.");
Console.WriteLine(e.Message);
}
}
}
```
这个程序首先接收用户的输入,然后尝试分割字符串获取数字和运算符。然后根据运算符执行相应的计算。如果输入不符合预期,它会捕获异常并给出相应提示。
阅读全文