题目
He ________ the 8:20 bus because he didn't leave home till 8:25.A. couldn't have caughtB. ought to have caughtC. shouldn't have caughtD. must not have caught
He ________ the 8:20 bus because he didn't leave home till 8:25.
A. couldn't have caught
B. ought to have caught
C. shouldn't have caught
D. must not have caught
题目解答
答案
A. couldn't have caught
解析
本题考查情态动词的过去完成形式的用法,需根据语境判断正确的情态动词短语。关键点在于理解时间顺序和逻辑必然性:
- 时间矛盾:公交车发车时间为8:20,而离家时间为8:25,显然无法赶上。
- 逻辑推断:需用表示对过去事件的否定推测的结构(couldn't have done),强调“不可能做到”。
- 排除干扰项:注意区分ought to(责任)、shouldn't(本不该)和must not(否定推测不常用)的语境适用性。
选项分析
- A. couldn't have caught
表示对过去的否定推测,符合“因时间不足而无法赶上”的逻辑必然性。 - B. ought to have caught
表示“本应做到”,但题干未体现“责任或义务”,且实际未发生,语境不符。 - C. shouldn't have caught
表示“本不该做却做了”,与题意矛盾(他没赶上)。 - D. must not have caught
must not表示“禁止”或“推测否定”,但must not have done一般用于强调“不可能发生”,此处用法不常见且逻辑不强。
关键结论
时间矛盾直接导致“不可能赶上”,故选couldn't have caught。