情态动词+have+done用法整理

本文详细解析了英语中情态动词与完成时态结合的不同形式及其具体应用场景,包括must have done、can't have done等结构,帮助读者掌握如何正确使用这些表达进行推测和假设。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



一、“must+have+done”表示对过去事情的肯定推测,译成“一定做过某事”,该结构只用于肯定句.

1.It must have rained last night,for theground is wet.昨晚一定下雨了,因为地面还是湿的.

2.You must have been mad to speak to theservant.你和仆人说话,一定是发疯了.

二、“can't+have+done”表示对过去事情的否定推测,译成“不可能做过某事”.

1.Mr.Smith can't have gone to Beijing,for Isaw him in the library just now.史密斯先生不可能去北京了,我刚才还在图书馆见过他.

2.Mary can't have stolen your money.She hasgone home.玛丽不可能偷你的钱,她回家去了.

三、“can+have+done”表示对过去行为的怀疑,用于疑问句,译成“可能做过……吗?.

1.There is no light in the room.Can theyhave gone out?屋里没有灯,他们可能出去了吗?

2.There is nowhere to find them.Where canthey have gone?到处找不到他们,他们可能到什么地方去呢?

四、“could+have+done”是虚拟语气,表示对过去事情的假设,意思是本来能够做某事而没有做.

He could have passed the exam,but he wastoo careless.本来他能够通过考试,但是他太粗心.

五、“may+have+done”表示对发生过的事情的推测,意思是“可能已经”或“也许已经”,用于肯定句中.

What has happened to George?

I don't know.He may have got lost.

—乔治发生了什么事?

——我不知道,他可能迷路了.

六、“might+have+done”表示对过去事情的推测,mightmay意思相同,但可能性更小.多用于虚拟语气结构中.

1.He might have given you more help,eventhough he was busy.(MET90)他或许会多给你一些帮助,即使他很忙.

2.She might have achieved greaterprogress,if you had given her more chances.如果你多给她点机会,她可能已经取得更大的成绩.

七、“would+have+done”虚拟语气,表示对过去事情的假设,意思是“本来会做”.

1.I would have told you all about the boy'sstory,but you didn't ask me.我本来会告诉你这个小男孩的故事,但是你没有问我.

2.Without your help,I wouldn't haveachieved so much.没有你的帮助,我是不会取得如此大的成绩.

3.Thank you so much for everything! I wouldn't survived without you.谢谢你为我做的一切,没有你我可能都无法活下来.

八、“should+have+done”意思是“本来应该做某事,而实际没做.”“shouldn't+have+done”表示本来不应该做某事,而实际做了.含有指责对方或自责的含意.

1.Tom,you are too lazy.The work should havebeen finished yesterday.汤姆,你太懒惰了,这项工作本来应该昨天就做完的.

2.Look,Tom is crying.I shouldn't have beenso harsh on him.,汤姆哭了,我本来不应该对他如此严厉.

3.We shouldn't have dragged him into this business at all.我们本不应该把他拉进来的(意思被拉下水,无法收场.)

九、“ought to+have+done”表示过去应该做而实际并没有做,译成“理应做……”,往往表示遗憾.与“should+have+done”用法基本一样.

I ought to have gone home last Sunday.我理应上星期日回家.

You ought not to have given him more help.你不应该帮助他那么多.

十、“need+have+done”表示本来需要做某事而没有做.needn't+have+done”则表示“本来不需要做某事而做了”.

I needn't have bought so much wineonly fivepeople came.我本来没有必要买这么多酒,只来了五个人.

He need have hurried to the station.In thatcase,be wouldn't have missed the train.他本来需要快点去车站,那样的话,他就不会误了火车.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值