获取代码输出到控制台的一行

Getting code to output on one line of the console

我在格式化输出时遇到问题。这是我的代码:

int[] Number = new int[15];
// int followup;

int Counter;

Random random = new Random();
for (Counter = 0; Counter < Number.Length; Counter++)
{
    int Rep = 0;
    Rep = random.Next(0, 345);
    Number[Counter] = Rep;
    Console.WriteLine("num:{0}", Rep);
}

我的数字就像

7
4
2
(repeat 15)

但我更喜欢这样输出:

6 2 7 4 (11 more)

我怎样才能做到这一点?

只需将 Console.WriteLine 更改为 Console.Write("{0} ", Rep);

    int[] Number = new int[15];
    // int followup;

    int Counter;

    Random random = new Random();
    Console.Write("Num: ");
    for (Counter = 0; Counter < Number.Length; Counter++)
    {
        int Rep = 0;
        Rep = random.Next(0, 345);
        Number[Counter] = Rep;
        Console.Write("{0}" + (Counter < Number.Length - 1 ? ", " : ""), Rep);
    }
    Console.WriteLine();

在循环内,更改 Console.WriteLine to Console.Write

    Random random = new Random();
    Console.Write("Num: ");
    for (Counter = 0; Counter < Number.Length; Counter++)
    {
        int Rep = random.Next(0, 345);
        Number[Counter] = Rep;
        Console.Write("{0} ", Rep);
    }
    Console.WriteLine();

然后在循环外调用Console.WriteLine()移动到下一行

如果你想要

is there a better way so that it just outputs num (number), (number) , (number)

那你为什么不这样用呢?

Console.Write("{0} ,", Rep);

应该可以正常工作

我会从数组创建一个字符串并在最后输出结果。

int[] Number = new int[15];    
int Counter;
Random random = new Random();
for (Counter=0; Counter<Number.Length; Counter++)
{
    int Rep = 0;
    Rep = random.Next(0, 345);
    Number[Counter] = Rep;
}
Console.WriteLine(String.Join(" ", Number));

现在您可以创建一个可重用的函数并实现关注点分离,业务逻辑在一个地方(递增数字),输出在另一个地方。

这将帮助您避免复制和粘贴编程(复制和粘贴编程是当您复制和粘贴代码时不做任何更改,或者可能有少量更改)。

int[] GetNumbers()
{
    int[] Number = new int[15];    
    int Counter;
    Random random = new Random();
    for (Counter=0; Counter<Number.Length; Counter++)
    {
        int Rep = 0;
        Rep = random.Next(0, 345);
        Number[Counter] = Rep;
    }
    return Number;
}

void DisplayNumbers()
{
    int[] numbers = GetNumbers();
    Console.WriteLine(String.Join(" ", numbers));
}