繁体   English   中英

如何从 C#/ 中的公共传递命令参数中获取提供 output 的主要方法

[英]How to get the main method to give output from public passing command argument in C#/

我是 C# 的新手,并且在将输入数据从 static 主要方法传递到另一个方法命令行公共 static 时遇到问题。 下面是 Visual Studio 2019 中的代码。我有输入数据,代码应该返回 calcPay 值,但没有。 它只输入变量初始化时声明的值。


namespace CalcGrossPay
{
    class Salary
    {
        static void Main()
        {
            double myHours = 0;
            double myRate = 0; 
            double grossPay;
            grossPay = CalcPay(myHours, myRate);


            Console.WriteLine("Enter total hours worked: ");
            myHours = Convert.ToDouble(Console.ReadLine());

            Console.WriteLine("Enter rate per hour: ");
            myRate = Convert.ToDouble(Console.ReadLine());

            Console.WriteLine("Number of hours worked is {0} at {1} per hour", myHours, myRate);

            Console.WriteLine("My gross pay is\n {0:F2}", grossPay.ToString("c"));
        }
          public static double CalcPay(double hours, double rate)
            {
                double pay;

                // If hours>40
                // Get gross pay by calculating overtime
                if (hours > 40)
                {
                    pay = 40 * rate + (1.5 * rate * (hours - 40));
                }
                else
                {
                    pay = hours * rate;
                }
                return pay;
            }
        
    }
}```

CalcPay方法只调用一次,即当变量设置为 0 时更改方法像这样

namespace CalcGrossPay
{
    class Salary
    {
        static void Main()
        {
            double myHours = 0;
            double myRate = 0; 
            double grossPay;
            


            Console.WriteLine("Enter total hours worked: ");
            myHours = Convert.ToDouble(Console.ReadLine());

            Console.WriteLine("Enter rate per hour: ");
            myRate = Convert.ToDouble(Console.ReadLine());

            Console.WriteLine("Number of hours worked is {0} at {1} per hour", myHours, myRate);

            grossPay = CalcPay(myHours, myRate);
            Console.WriteLine("My gross pay is\n {0:F2}", grossPay.ToString("c"));
        }
          public static double CalcPay(double hours, double rate)
            {
                double pay;

                // If hours>40
                // Get gross pay by calculating overtime
                if (hours > 40)
                {
                    pay = 40 * rate + (1.5 * rate * (hours - 40));
                }
                else
                {
                    pay = hours * rate;
                }
                return pay;
            }
        
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM