2017-03-07 11 views
-2

対応するID番号と名前のペアを作成するために必要なコードがありません。助けていただければ幸いです。名前と対応するID番号をペアにするにはどうすればいいですか?

class Program 
{ 
    struct StudentID 
    { 
     public int idNumber; 
     public string name; 
    } 

    static void Main(string[] args) 
    { 

     StudentID[] StudentInfo = new StudentID[3]; 

     for (int i = 0; i < StudentInfo.Length; i++) 
     { 
      Console.Write("Enter ID Number: "); 
      StudentInfo[i].idNumber = Convert.ToInt32(Console.ReadLine()); 
      Console.Write("Enter Name: "); 
      StudentInfo[i].name = Convert.ToString(Console.ReadLine()); 

     } 

     int temp = 0; 
     for (int i = 0; i < StudentInfo.Length; i++) 
     { 
      for (int j = 0; j < StudentInfo.Length; j++) 
      { 

       if (StudentInfo[i].idNumber < StudentInfo[j].idNumber) 
       { 
        temp = StudentInfo[i].idNumber; 

        StudentInfo[i].idNumber = StudentInfo[j].idNumber; 

        StudentInfo[j].idNumber = temp; 
       } 
      } 
     } 

     Console.Write("Student ID Sorted with Corresponding Name: "); 

     for (int i =0; i < StudentInfo.Length; i++) 
     { 
      Console.WriteLine("\nStudent ID : {0} ", StudentInfo[i].idNumber); 
     } 

     Console.ReadLine(); 

    } 
} 

答えて

1

あなたは各エントリのID番号を交換しています。あなたはエントリー全体を交換したい。

if (StudentInfo[i].idNumber < StudentInfo[j].idNumber) 
{ 
    var temp = StudentInfo[i]; 
    StudentInfo[i] = StudentInfo[j]; 
    StudentInfo[j] = temp; 
} 
関連する問題