从A、B、C、D中选出可以填入空白处的最佳答案。
1. John ________ a better job, but he was too careless.
A. should do B. must have done
C. could do D. could have done
2. ─I don’t know why he is late.
─Nor do I. He ________ have had an accident.
A. can B. should C. might D. must
3. The playground is all wet. It ________ rained last night.
A. had B. can have
C. should have D. must have
4. It’s already eleven o’clock. He ________ to bed.
A. must have gone B. must go
C. should have gone D. can’t have gone
5. ─Who told you my address?
─I don’t remember clearly. It ________ Tom.
─It ________ Tom. He doesn’t know it.
A. may have been; can’t be
B. can be; mustn’t be
C. must have been; can’t have been
D. may have been; mustn’t have been
6. John passed the exam. He didn’t study very hard. The exam ________ difficult.
A. can’t have been B. must have been
C. couldn’t be D. might have been
7. We ________ have hurried. We had to wait twenty minutes before the meeting began.
A. needn’t B. should C. must D. couldn’t
8. ─Mary looks sad. Did you tell her about the accident?
─Yes, but I ________ have told her.
A. should B. shouldn’t
C. must D. ought to not
9. She ________ have gone to college, but she didn’t pass the exam.
A. might B. would C. must D. need
10. He must have seen the inspector last night, ________ he?
A. mustn’t B. hasn’t C. didn’t D. doesn’t
【答案与简析】
1. D。根据后面的but he was too careless,说明约翰的工作本来可以做得更好(表示一种可能性),但是他太粗心了;如果用B: 约翰的工作肯定做得更好,但是他太粗心了。不合逻辑。
2. C。由Nor do I可知,说话者对他为何迟到没有把握。指没有把握的推测一般用may/might+have+过去分词表示,而can+have+过去分词一般用于否定句或疑问句,故可排除A。
3. D。备选项B常用于否定句或疑问句,故可排除;备选项C通常有责备的语气,在此不合题意;备选项D表示一种有把握的推测,符合The playground is all wet这一前提。
4. A。由前句的“现在已经十一点钟了”,说明现在很晚了,故备选项A (他肯定已经睡觉了)符合题意;而备选项D(他不可能已经睡觉了)和备选项C(他本来已经睡觉了)均不合题意。
5. A。由I don’t remember clearly可以看出,说话者对所发生的事情不太有把握,故第一空用may have been表示不肯定的推测;由He doesn’t know it可知, 该说话者对前一位的推测予以否定,故第二空填can’t be,表示“不可能”。must表示推测时一般用于肯定句,故可排除D。
6. A。既然约翰学习不是很努力,也能通过考试,说明那次考试“不可能很难”,故选 A 符合题意。
7. A。我们到达开会的地方等了二十分钟才开始开会,说明我们来开会的时候匆忙是“不必要的”,故选A。needn’t have done sth. 表示过去不必做某事(但做了)。
8. B。玛丽现在很悲伤,是因为我把那次事故告诉了她;如果我当时没有告诉她,她现在就不会悲伤了。言外之意是:我当时不该告诉她那次事故。指过去不该做某事(但却做了),常用should not/ought not to+have+过去分词表示。
9. B。她本来可以上大学的,但她没有通过考试。would+have+过去分词表示过去本来要做某事,却因某种原因而未做成。
10. C。含must have done句式的反意疑问句,若陈述部分含表示过去时间的状语, 反意疑问部分用过去式。本题有过去时间状语last night,故选C。