【正确答案】
D
【答案解析】[考点] 情态动词
must have done表示对过去情况的肯定推测,意为“一定做了……”,没有“mustn't have done”这一形式;needn't have done表示过去本不必做某事而实际上却做了;should have done表示过去本应该做某事而实际上没有做,其否定形式表示“本不应该做……却做了”;couldn't have done表示对过去情况的否定推测,意为“不可能做了……”。根据句意可知,选D。
他一整晚都在家和我待在一起,所以他不可能去了博物馆。