1.may/might have missed 由"I am not sure"可知空处表示不太肯定的推测,故用may/might have done。
2.should have been should have done表示"本应该做某事而实际上没做"。
3.can't/couldn't have stayed 由"She doesn't know your address"可知,空处表示否定的推测,故用can't/couldn't have done。
4.must have received 因为书是三周前寄出的,因此她肯定已经收到了。must have done 表示肯定的推测,用于肯定句中。
5.must have passed 由上一句中的"happy"和下一句中的"not difficult after all"可以推知,此处表示肯定的推测,故用must have done。
6.needn't have taken 句意:结果昨天天气不错,我本没有必要随身带把伞。needn't have done表示"本不必做某事(而实际上做了)"。
7.needn't have come 句意:既然你昨天工作到那么晚,今天早上你就没必要来了。
8.might/may have failed 从语境分析,此处表示对过去可能发生的事情的推测,故用may/might have done。
9.ought to/should have come 由"but why didn't you"判断,空处应用ought to/should have done 结构,表示"本应该做某事而实际上没做"。
Ⅱ.完成句子
1.-Mummy,I climbed to get the teddy bear from the top of the shelf.