“情态动词+have done”结构是高考重要考点,也是较难掌握的语法项目之一,下面结合近年高考试题谈谈其主要用法。>
一、在虚拟条件句中,如果表示与过去事实相反的情况,从句用过去完成时,而主句中则用“情态动词+现在完成时”,即would/ could/ should/ might have done
例If he had worked hard, he would have passed the Collage Entrance Examination.如果他学习努力,
他就会通过高考了。
巩固练习
1. --- I stayed at a hotel while in New York. --- Oh, did you?You ___ with Barbara. (NMET98)
A. could have stay B. could stay
C. would stay D. must have stay
2. Yesterday Jane walked away for discussion, otherwise, she ___ something she would regret later.( 96上海)
A. had said B. said
C. might say D. might have said
答案简析
1. 答案 A本句是一个含蓄虚拟条件句,意思是:If you hadn’t stay at a hotel while in New York, you could have stayed with Barbara. 表达了与过去事实相反的情况。>
2. 答案D本句考查的也是含蓄虚拟语气,意思是:如果她参加了讨论,她可能会说出一些后来令她后悔的话。表达了与过去事实相反的情况。>
二、must have done表示对过去已经发生过的情况的肯定推测判断,语气较强,意思是“一定……、肯定……”
例It must have rained last night, for the ground is wet this morning.昨天晚上一定是下雨了,因为今晨地面是潮湿的。
巩固练习
1. I didn’t hear the phone. I ____ asleep. (NMET 89)
A. must be B. must have been
C. should be D. should have been
2. --- I rang your home yesterday. A man answered but I didn't recognize the voice.
--- On, it ___ my brother, Peter.
A. must be B. must have been
C. can have been D. might be
答案简析
1. 答案B关键词是didn’t,说明动作发生在过去,所以是对已经发生过的情况的推测判断。>
2. 答案B 本句的意思是:我昨天朝你家里打的电话。这是对过去情况的推测判断,应该用must have done结构。
三、may/ might have done也用于对已经发生过的情况的肯定推测判断,但语气稍弱,意思是“可能,或许……”。例如:
She didn’t get there in time. She may have missed the bus.
她没能及时到达那儿。她可能没赶上汽车。
He didn’t come to school today. He might have been ill.
他今天没来上课,他可能病了。
巩固练习:
1. Sorry, I’m late. I ____ have turned off the alarm clock and gone back to sleep again.( 2000春)
A. might B. should C. can D. will
2. The window was broken. Tom ____ have done that, for he was a little naughty.
A. could B. might C. should D. ought to
3. Yesterday, Jane walked away from the discussion. Otherwise, she ___ something she would regret later. (1996 上海)
A. had said B. said C. might say D. might have said
答案简析:
这三句表达的都是对过去已经发生过的情况的推测判断,意思是“可能、或许……”,应该用may/might have done结构。答案分别选ABD。
三、如果对过去情况推测判断的句子是疑问句和否定句,只能用can/could和can’t,/couldn’t。例如:
He can’t have gone abroad; I saw him an hour ago.
他不可能去国外,我一个小时前还见到他呢。
--- Can he have passed the exam? --- No, he can’t have. He didn’t work hard.
他通过考试了吗?不,他不可能通过考试。他学习不努力。
巩固练习:
1. --- There were already five people in the car but they managed to take me as well.
--- It ___ a comfortable journey. (MET95)
A. can’t be B. shouldn’t be C. mustn’t have been D. couldn’t have been
2. My sister met him at the Grand Theatre yesterday, so he ____ your lecture. (2002 上海)
A. couldn’t have attended B. needn’t have attended
C. mustn’t have attended D. shouldn’t have attended
3. My English-Chinese dictionary has disappeared. Who ___ have taken it? (2003 上海春招)
A. should B. must C. could D. would
4. I didn’t see her in the meeting-room this morning. She ____ at the meeting. (1995 上海)
A. mustn’t have spoken B. shouldn’t have spoken
C. needn’t have spoken D. couldn’t have spoken
答案简析:
1、根据They were already five people in the car, but they managed to take me as well.一句中的时态,应该是对过去情况的推测判断,因为车上已经有5位人了,在带上我一个,可以断定这一定是一次不舒适的旅行。所以,本句表达的是对过去否定的推测判断,应该用can’t/ could have done来表达。故答案选D。
2、根据句意“我妹妹昨天在大剧院见过他”,所以,一定是对过去已经发生的否定的判断,答案选A。
3、本句表达的是对过去发生过的情况的疑问,所以应该用could have done,答案选C。
4、本句表达的是过去已发生情况否定的推测判断,应该用couldn’t have done,故答案选D。
四、含有must/ may/ might表示对过去情况推测判断的句子,如果变成反意疑问句,反意疑问句中动词应与情态动词must等后的动词形式保持一致,用一般过去时或现在完成时。例如:
He must have been living here for years, hasn’t he?
他一定是在这儿住了好几年了,是吗?
You can’t have slept well last night, did you?
你昨天晚上没睡好,是不是?
巩固练习:
1: Great changes must have taken place in the village in the past few years, ____ they?
A. mustn’t B. haven’t they C. can’t D. didn’t
2. He must have lived a happy a few years ago, ____ he?
A. didn’t B. hasn’t C. mustn’t D. can’t
答案简析:
1. 含有must表示推测判断的句子,其反意疑问句的动词形式应与must后动词时态保持
一致。可以理解成如果不表示推测判断,该句应该说成:Great changes have taken place in the village in the past few year. 变成反意疑问句后应该说成:Great changes have take place in the past few years, haven’t they? 所以,该题选B。
2. 本句中must后的动词形式应为did,所以,反意疑问句的动词应为didn’t。故答案选A。
五、should/ ought to have done表示“本来应该做的,而实际上没有做的事情”,其否定形式则表示“已经做了不该做的事情”,含有责备的意思。例如:
The flowers have died. I should have watered them often.
这些花儿都死了。我本来应该常给他们浇水的。(其实没浇水)
You ought not to have told them the truth.
你本不应该告诉他们真相的。(其实你告诉他们了)
巩固练习:
1. There was a lot of fun at yesterday’s party. You ___ come, but why didn’t you? (99 上海)
A. must have B. should C. need have D. ought to have
2. Oh, I am not feeling well in the stomach, I ____ so much fried chicken just now. (2002 上海春)
A. shouldn’t eat B. mustn’t have eaten C. shouldn’t have eaten D. mustn’t eat
3. I was really anxious about you. You ___ home without a word. (NMET 2001)
A. mustn’t leave B. shouldn’t have left C. couldn’t have left D. needn’t leave
--- I’ll tell Mary about her new job tomorrow.
---You ____ her last week. (04 福建)
A. ought to tell B. would have told C. must tell D. should have told
Mr. White ____ at 8:30 for the meeting, but he didn’t show up. (04 全国)
4. Mr. White _____ at 8:30 for the meeting, but he didn’t’ show up.
A. should have arrived B. should arrive
C. should have had arrived D. should be arriving(04广西卷)
答案简析:
1、 本句的意思是:昨天的聚会很有意思,你本来应该来的,可你为什么没来?表示“本应该做,而实际上没有做的事情”应该用should/ ought to have done。答案D。
2.、本句的意思是:我胃不舒服,我刚才不应该吃那么多油炸鸡。其实你吃了所以应该选C。
3、本句表达的意思是:你不应该一句话没说就离开家。含有责备的意思,做了不应该做的事情,答案选B。
六、needn’t have done表示“做了本来不必做的事情”,通常不用于肯定句。例如:
It’s only five minutes’ walk. We needn’t have taken a taxi.
只有5分钟的步行路程,我们本不必乘出租车的。
It is warm today. You needn’t have worn your coat.
今天天气暖和,你本来不必穿大衣的。
巩固练习:
1. He is not poor. You ____ have lent him the money.
A. can’t B. needn’t C. couldn’t D. mustn’t
2. There was plenty of time. You ___ have hurried.
A. won’t B. mustn’t C. needn’t D. couldn’t
答案简析:
1. 该句的意思是:他不穷,你本不必借给他钱。答案选B.
2. 该句的意思是:时间充裕着呢,你不必慌忙。答案选C。
--- Catherine, I have cleaned the room for you.
--- Thanks. you ___ it. I could manage it myself. ( 05福建 31题)
A. needn’t do B. needn’t have done C. mustn’t do D. shouldn’t have done
七、can/ could have done表示“本来能够做而实际上没有做的事情”。例如:
You could have come here a little earlier.
你本来可以早点来到这儿的。
She could have earned a lot of money.
她本来可以挣一大笔钱的。
巩固练习:
He paid for a seat, when he ___ have entered free. (05 山东)
A. could B. would C. must D. need
1. I ____ here in time, but I met an old friend of mine. I stopped and talked with him for some time.
A. shouldn’t have come B. must have come
C. needn’t have come D. could have come
2. They ____ have finished the work yesterday, but it was raining hard.
A. must B. could C. should D. might
答案简析:
1. 这句话的意思是:我本来可以按时来这儿的,但是遇到一位老朋友,说了会话,所以没能及时来这儿。答案选D。
2. 该句的意思是:他们本来可以做天完成工作的,但是昨天雨下的太大,所以没能完成。答案选B。



