can have gone和may have gone的区别

问题描述:

can have gone和may have gone的区别
这2个都表示对过去的事情表示猜测,请问用法有什么区别呢?
例如,there is no light in the room,can they have gone out?
there is no light in the room,may they have gone out?
这两句话的用法有错吗?
1个回答 分类:英语 2014-10-28

问题解答:

我来补答
我会用could,表推测的.can 应该也可以,但我不会用may
may / might have done 表示“过去可能做了某事”.may 比 might 表示的可能性在说话人看来稍大些.may/might not have done表示“过去可能没有做某事.”例如:
I can't find my keys.I may / might have left them at the school yesterday.我找不到我的钥匙了.我可能昨天把他们落在学校了.
can/could have done 表推测一般用在否定句和疑问句中,表示不相信或怀疑的态度.
Can/Could he have passed the exam?他可能通过了考试吗?
注:表示推测过去某动作发生的可能性时,就表示的可能性程度而言,must 最大,could 其次,may 更次之,might 最小.
(1)can,could后接完成式的用法:①在否定句或疑问句中表示对过去发生过的事情的“怀疑”或“不肯定”的态度,Could he have said so?②在肯定句中,可以表示过去可能做到而实际并没做到的事情,有“劝告”或“责备”的语气.如:---- When did you answer her letter?---- Only yesterday.---- It's too late.You could have answered it earlier,I am sure.
(2)may,might后接完成式的用法 ①表示对过去某事的推测,认为某一件事情在过去可能发生了.如果使用might,语气就比较婉转或更加不肯定,如:Mary might have learned some Chinese before.②可以表示过去本来可以做到而实际没有做到的事情,有“劝告”或“责备”的语气,如:You didn't do the work well that day.You might have done it better.
(3)must后接完成式的用法:表示对过去某事的推测,认为某事在过去一定做到 了,如:Liu Dong isn’t in the classroom.He must have gone to the library.
 
 
展开全文阅读
剩余:2000