2016-01-24 97 views
1

我遇到了格式輸出的問題。這裏是我的代碼:獲取代碼以在控制檯的一行上輸出

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) 

我怎麼能做到這一點?

+0

那麼你正在打印它們,因爲你生成它們。如果你想讓它們按順序(???)等到循環結束並對它們進行排序 – Plutonix

+0

您是否想要打印出隨機數字順序? –

+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

我曾考慮過這個問題,但後來遇到了一個問題,它在每一個像素上添加了「num:(數字):num:14 num:84等等,是否有更好的方法,以便輸出num(數字) (number),(number)? –

+1

你用什麼編譯器?你用的是IDE嗎? –

+1

我使用的是Visual Studio 2013 –

3

在循環中,改變Console.WriteLineConsole.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()循環外移到下一行

3

如果你想擁有像

有沒有更好的辦法,這樣它只是輸出NUM(個數),(號),(數)

那麼你爲什麼不使用這樣的?

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

應該正常工作

+0

那麼問題也與是,我將它想輸出像 編號:1 5 6 8 但它輸出像編號:1號:5號:6編號:8 –

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

創建可重複使用的方法是一個很好的建議。 –