C#如何在2个.cs文件之间返回值

时间:2018-12-09 13:10:06

标签: c# return

因此,我试图将2个.cs文件之间的折扣金额返还给主要客户并在其中打印出金额,而不是在第二堂课上这样做。我对此很陌生,需要帮助

代码尚未完成

主要

using System;

    namespace CalcDiscount
    {
        class Program
        {
            static void Main(string[] args)
            {
                Console.WriteLine("Enter price");
                double input = double.Parse(Console.ReadLine());
                    Calculator myCalculator = new Calculator();
                myCalculator.Calculation(input);

                  Console.WriteLine("Enter discount");
                input = double.Parse(Console.ReadLine());
                Console.WriteLine("");
                Console.ReadLine();
            }
        }
    }

第二个文件 Calculator.cs

using System;

    namespace CalcDiscount
    {
        public class Calculator
        {
            public void Calculation(double input)
            {
                Console.WriteLine("Your entered the number: " + input);
                int i = 1;
                if (input != 0)
                {
                     Console.WriteLine(input + " x " + i + " = " + input * i);

                }

            }
        }
    }

2 个答案:

答案 0 :(得分:1)

您可以将Calculator类中的Calculation方法从void更改为double。该方法将计算结果并将其返回到将要打印的主函数。

计算方法:

composer update

主要:

public double Calculation(double input1, double input2)
{
      return (input1 * input2);
}

答案 1 :(得分:1)

public class Calculator
    {
        public double Calculation(double input)
        {
            Console.WriteLine("Your entered the number: " + input);
            int i = 1;
            double result = 0;
            if (input != 0)
            {
                result = i * input;

            }

            return result;

        }
    }

我在这里做了一些更改

  1. 将返回类型更改为double(因为您发送了double,因此逻辑上返回相同类型但不必要)
  2. 添加一个result变量以返回结果
  3. 进行了计算(result = i * input
  4. 返回result

请注意,如果i == 0,结果将为0,因为result已初始化为零,但可以应用所需的任何逻辑

然后在您的Main中,我从函数中读取结果并将其输出到Console

double result = myCalculator.Calculation(input);
Console.WriteLine("caculcation result is" + result);