如何在C#中加减?

如何在C#中加减?,c#,math,C#,Math,我是C#的新手,我正在尝试做一个计算器。在Python中(我比较熟悉),您只需导入数学,然后写出您想用数学做什么 但对于C#,这是我的代码: using system; namespace Calculator { class MainClass { public static void Main(string[] args) { divide(2,3); } public static

我是C#的新手,我正在尝试做一个计算器。在Python中(我比较熟悉),您只需
导入数学
,然后写出您想用数学做什么

但对于C#,这是我的代码:

using system;


namespace Calculator
{
    class MainClass
    {
        public static void Main(string[] args)
        {
             divide(2,3);
        }
        public static void add(int num01, int num02)
        {
            Console.WriteLine("The result is " + num01+num02);
            Console.ReadKey();
        }
        public static void multiply(int num01, int num02)
        {
            Console.WriteLine("The result is " + num01 * num02);
            Console.ReadKey();
        }
        public static void divide(double num01, double num02)
        {
            Console.WriteLine("The result is " + num01 / num02);
            Console.ReadKey();
        }
        public static void subtract(int num01, int num02)
        {
            Console.WriteLine("The result is " + num01 - num02);
            Console.ReadKey();
        }
    }
}
如果我尝试加法,它首先给出23,如果我尝试减法,它会抛出一个语法错误(运算符“-”不能应用于“string”和“int”类型的操作数)


我对这种语言只是新手,所以我可能犯了一些愚蠢的错误。

将您的最终计算转换为类似这样的字符串

Console.WriteLine("The result is " + (num01 - num02).ToString());
或者用括号括起来

Console.WriteLine("The result is " + (num01 - num02));

这种混淆源于
+
两个角色之间的混淆:

  • 在带有字符串的表达式中使用时,表示串联
  • 在具有数字类型的表达式中使用时,表示加法
可以通过在表达式周围放置括号来解决此问题

但是,更好的方法是使用字符串格式或替代串联,这样可以完全避免此问题:

Console.WriteLine("The result is {0}", num01 - num02); // Formatting


只需使用
()
对操作进行排序即可


在Java和C等强类型语言中,操作顺序非常重要。像许多已经回答过的问题一样,您首先将字符串添加到第一个数字,然后尝试从字符串中减去

这就是您的代码所做的:

1. "The result is " + num01 - num02
2. "The result is (value of num01)" - num02
3. Error when trying to subtract
把它改成这个

Console.WriteLine("The result is " + (num01 - num02));
您的代码执行如下:

1. "The result is " + (num01 - num02)
2. "The result is " + (difference of num01 and num02)
3. "The result is (difference of num01 and num02)"

希望这有帮助

您将它们添加为
字符串
。您需要首先以
int
的形式获取值。
“结果是”+num01-num02
类似于
(“结果是”+num01)-num02
;数字首先连接到字符串,然后进行减法运算。(它从左到右关联。)使用括号更改.Console.WriteLine(“结果是”+(num01+num02))``是否有任何语言将
“Result=“+4-2”
计算为“Result=2”?请参阅:您不必使用
.ToString()
Console.WriteLine("The result is " + (num01 - num02));
1. "The result is " + (num01 - num02)
2. "The result is " + (difference of num01 and num02)
3. "The result is (difference of num01 and num02)"