英语语法 情态动词 have 过去分词
英语中,表示对过去某种情况进行推测或对已发生的动作或存在的状态进行推测,常用情态动词must, may, might, can, could, should, ought to, would等+have+过去分词表示。一般来说,说话人的语气或推测的把握程度不同,使用的情态动词也不同。现分述如下:
1. must+have+过去分词:表示对过去发生的动作或存在的状态进行推测。只用于肯定的陈述句中(在否定句及疑问句中用can ),意思是"一定已经"。例如:
If he had really been there, I must have seen him.如果他当时确实在那里,我一定会看见他。
Her watch must have stopped. I will go and call her.她的表准是停了。我去叫她。
2. may/might+have+过去分词:表示对过去发生的动作或存在的状态进行不肯定的推测,即说话人认为过去某事发生的可能性或某状态存在的可能性一般。可用于肯定句(意思是"可能已经")和否定句(意思是"可能没有");might的语气没有may那么肯定。例如:
She may have read the book.她可能已经看过这本书了。
He might not have got your letter.他或许没有收到你的来信。
3. can/could+have+过去分词:表示对过去某种行为或存在的状态的怀疑或不肯定推测。can常用于否定句(意思是"不可能已经")和疑问句;could除用于否定句及疑问句外,还可用于肯定句(意思是"那时可能;本来可以")。例如:
Don't worry-they could have just forgotten to phone.别担心--他们很可能只是忘了打电话。
Where can he have gone?他可能去哪里了呢?
4. need+have+过去分词:该句式常用于否定句,表示过去做了不必做或不需要做的事情或过去做某事纯属多余,含有"根本不必;本来不必"之意,也可用于疑问句。例如:
You needn't have told them that.你没有必要告诉他们那个。
Need they have done it last week?他们上周做这事有必要吗?
5. should/ought to+have+过去分词:肯定式表示"过去本应做某事(但没做)";否定式表示"过去不该做某事(但做了)"。该句式含有不满或责备之意。例如:
You're right. I should have thought of that.你说得对。我应当想到那点(但没想到)。
She ought to have been more careful.她本该更小心些。
6. would+have+过去分词:表示过去本来要做某事却因某种原因未做,通常用来说明某种情况,但不像用should或ought to那样含有责备之意。例如:
I would have written to you earlier but I have been ill.我本来要早点给你写信,但我生病了。
If I had seen the advertisement I would have applied for the job.我要是看见那个广告了,我就申请那份工作了。 从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. shouldC. mightD. 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. wouldC. 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。
|