Thank you for the question; it's a good one, but slightly flawed.
As others have pointed out, the results for query C are not guaranteed, but it is not just the order of the rows, but the value in the NumberArrived column that may be different. In the example, query C produces the correct results, but only because Anita was inserted before Mary. If you change the order of the data rows in the INSERT statement to insert Jean, then Mary, then Anita, then Query C will produce Jean - 1, Mary - 2, and Anita - 3, which does not match the desired output. Thus, query C produces the correct results sometimes, but not all of the time, while query B is accurate all of the time. Therefore, the correct answer should have been only query B.