2017-10-16 20 views
1

我想知道如何將用戶輸入顯示爲編號列表?例如如何將輸出顯示爲編號列表

  1. 果醬
  2. 東西
  3. 別的東西

這是我迄今爲止在關於設置陣列和按字母順序排序,但想也顯示爲每以上,無法在任何地方找到任何信息。提前致謝。

//call method to sort array in alphabetical order 
     fillArraySort(); 

     //call method to display in numbered list 
     //displayNumberedList(); 

    } 

    /*declare the array 
    ask user for index (size of array) and store user input array*/ 

    static void fillArraySort() 
    { 
     int a; 
     Console.WriteLine("How many inanimate object names do you wish to enter?"); 
     a = int.Parse(Console.ReadLine()); 
     int[] index = new int[a]; 
     for (int i = 0; i < index.Length; i++) 
     { 
      Console.WriteLine("Enter name of object:"); 
      index [i] = int.Parse(Console.ReadLine()); 
     } 
     Array.Sort(index); 
     Console.WriteLine("The array sorted in alphabetical order is: "); 
     foreach (var i in index) 
     { 
      Console.WriteLine(i); 

     } 
     Console.WriteLine(); 
     Console.ReadLine(); 
    } 


    //static void displayNumberedList() 
    //{ 
     //code 
+3

首先,我建議,如果要排序的名單,你使用'字符串'數組而不是'int'數組。 – Deolus

+0

你在代碼中的所有內容都是一個你已經排序的int數組。您希望我們建議如何從用戶處獲取字符串輸入? –

+0

嗨。感謝您的建議重新字符串數組@Deolus。我將它改爲string而不是int。 – ChunLi

回答

0
static void FillArraySort() 
{ 
    Console.WriteLine("How many inanimate object names do you wish to enter?"); 

    int number = int.Parse(Console.ReadLine()); 

    var array = new string[number]; 

    for (int index = 0; index < number; index++) 
    { 
     var message = string.Format("Enter name of object {0}:", index + 1); 

     Console.WriteLine(message); 

     array[index] = Console.ReadLine(); 
    } 

    Array.Sort(array); 

    Console.WriteLine(); 
    Console.WriteLine("The array sorted in alphabetical order is:"); 

    for (int index = 0; index < number; index++) 
    { 
     var item = array[index]; 

     var message = string.Format("{0}. {1}", index + 1, item); 

     Console.WriteLine(message); 
    } 

    Console.WriteLine(); 
    Console.WriteLine("Press any key to exit..."); 
    Console.ReadLine(); 
} 
+0

謝謝,這看起來不錯。我將通讀並將其分解爲多種方法。乾杯:) – ChunLi

1

試試這個:

string[] items = new string[] 
{ 
    "Jam", "Tea", "Something", "Something else" 
}; 

Console.WriteLine(
    String.Join(
     Environment.NewLine, 
     items.Select((x, n) => $"{n + 1}. {x}"))); 

這給:

 
1. Jam 
2. Tea 
3. Something 
4. Something else 
相關問題