1.【解析】选D。句意为:——我的钥匙在哪儿?我记得我昨天把它放在这儿了。——你可能把它放错地方了。此处应是对过去动作的推测,should have done表示“本应该做某事(而事实上并没有做)”;might have done表示对过去发生的动作不大肯定的推测,表示“可能/或许已经做了”。
2.【解析】选C。句意为:你想像不到一位举止优雅的绅士竟然非常粗鲁地对待一位女士。should表示说话人对某事不能理解,感到意外、惊异等意思, 意为“竟会”。
3.【解析】选C。句意为:——她看上去很高兴,肯定通过这次考试了。——我猜也是,这次考试一点也不难。should have done表示“本应该做某事(而事实上并没有做)”;could have done用于肯定句时,表示“本可以做某事而未做”; must have done 表示对过去的肯定的推测;might have done表示对过去发生的动作不大肯定的推测,表示“可能/已经或许做了”。