John’s score on the test is the highest in the class; ________.
句意:约翰今天考了班上最高分,他昨晚一定努力学习了。must have done表示对过去的推测,意为“过去一定做了某事”。should have done表示“过去本应该做某事,但实际上并未做”。因此答案选C。