c#方法声明

本文关键字:声明 方法 | 更新日期: 2023-09-27 18:19:17

 public void GetPosNonZeroDouble()
 { 
     double x;
     Console.WriteLine("Enter The Length Of The Side");
     x = double.Parse(Console.ReadLine());
     if (x <= 0)
         Console.WriteLine("Error - input must be a non - zero positive number");
     else
         return x;
     x = double.Parse(Console.ReadLine());
 }
 static void ProcessSquare()
 {
     GetPosNonZeroDouble();
     double side;
     double answer;
     Console.WriteLine();
     side = double.Parse(Console.ReadLine());
     answer = Math.Pow(side, 2);
     Console.WriteLine("The Square Area is {0}", answer);
 }

我应该有一个"GetPosNonZeroDouble"需要像这样的图像:c#问题我已经声明了这个方法,但不确定如何告诉processSquare()检查数字是否为<0以及如何通过输入模块显示。

c#方法声明

请帮助我,因为我正在寻找解决我的问题的方法。

您需要将方法设置为静态,或者将其作为类的一部分,并从类的实例调用它。此外,您不能从void方法返回值。

public static double GetPosNonZeroDouble()
{ 
    double x = 0;
    while (x <= 0)
    {
        Console.WriteLine("Enter The Length Of The Side");
        if (!double.TryParse(Console.ReadLine(), x) || x <= 0)
        {
            Console.WriteLine("Error - input must be a non - zero positive number");
        }
    }
    return x;
 }
GetPosNonZeroDouble

是一个实例方法,你试图从一个静态方法调用,你不能这样做。您需要为GetPosNonZeroDouble所在的任何类创建一个实例,然后使用点表示法调用它。看看这里,你也应该尝试一些c#教程来帮助你。

你似乎没有使用方法的经验。

作为开始,我建议你查看c#官方文档中的方法:https://msdn.microsoft.com/en-us/library/vstudio/ms173114 (v = vs.100) . aspx

例如,你的方法GetPosNonZeroDouble()不返回任何东西,但你试图用return x;返回一个值(这将导致编译器错误)。