Order 3 differents lists, based on 1 of them

You are keeping your data by column, in 3 lists.

To keep the data for each student together, you should keep a table (list of lists)
with one row per student, name in column 1, subject in cloumn 2, score in column 3.

There are several sorting solutions in FAQ Section: Lists
and Merge Sort Block Procedures Library