获取代码以在控制台的一行上输出

时间:2016-01-24 01:25:47

标签: c# format repeat

我的格式化输出有问题。这是我的代码:

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)

我怎么能实现这个目标?

4 个答案:

答案 0 :(得分:3)

只需将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();

答案 1 :(得分:3)

在循环内,将Console.WriteLine更改为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()以移至下一行

答案 2 :(得分:3)

如果你想拥有它

  

有更好的方法,只输出num(数字),(数字),(数字)

那你为什么不这样用呢?

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

应该可以正常工作

答案 3 :(得分:1)

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

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));
}