-4

在 C# 中,在我编写Console.WriteLine()并要求我输入多个值之后,我可以通过一种方法获取它们吗?例如:

double a, b, c = 0;
Console.WriteLine("please enter the values of:\n a value:\n b value: \n c value:");

谢谢您的帮助 (:

4

2 回答 2

3

没有针对此特定功能的 BCL 方法,但您可以使用辅助函数来收集这些,而无需过多重复。

static void Main(string[] args)
{
    string RequestInput(string variableName)
    {
        Console.WriteLine($"{variableName}:");
        return Console.ReadLine();
    }

    Console.WriteLine("please enter the values of:");
    var a = double.Parse(RequestInput("a"));
    var b = double.Parse(RequestInput("b"));
    var c = double.Parse(RequestInput("c"));

}
于 2019-11-23T20:14:39.443 回答
0

您可以执行以下操作,假设用户将在控制台中输入一个字符串,例如"2.3 3.4 4.5". 您可能需要进行一些检查以确保输入正确。

double  a = 0.0, b = 0.0, c = 0.0;
Console.WriteLine("please enter the values of: a b c");

string input = Console.ReadLine();
string[] inputParts = input.Split(' ');

if (inputParts.Length > 0 && inputParts[0] != null) 
{
    Double.TryParse(inputParts[0], out a);
}

if (inputParts.Length > 1 && inputParts[1] != null) 
{
    Double.TryParse(inputParts[1], out b);
}

if (inputParts.Length > 2 && inputParts[2] != null) 
{
    Double.TryParse(inputParts[2], out c);
}

Console.WriteLine($"a: {a.ToString()}");
Console.WriteLine($"b: {b.ToString()}");
Console.WriteLine($"c: {c.ToString()}");
于 2019-11-23T20:39:58.393 回答