英语完成时态

来源:百度知道 编辑:UC知道 时间:2024/06/12 01:14:08
先看看这题啊:
These shoes ___ before Peter came.
A.had sold out B.have been sold out C.had been sold out

再问下:
have been doing
have done
两个有些什么区别?短暂性和持续性动词的完成时态分别怎么用?

比如说:
I have been bought the book for five years.
这句话对了吗?要错了的话怎么改????

C,鞋子在PETER来之前已经售完。

首先,鞋子与销售是被动关系,是人把鞋子卖掉的,对鞋子来说是被动,排除A,
B和C只是现在完成时和过去完成时的区别。句子意思:鞋子被卖完这个动作在PETER来之前已经完成,PETER来已经是过去时,所以卖鞋一定是过去的过去,所以不能用现在完成时,只能选C

HAVE BEEN DOING持续正在做某事,这个状态已经持续叻一段时间
HAVE DONE已经完成,只是表示动作完成的一个状态,并没有持续

I HAVE BOUGHT THE BOOK FOR FIVE YEARS。 这本书我已经买叻5年叻。 I BUY THE BOOK, 我和买是主动关系,不用被动语态,书和买才是被动关系,而且买只是短暂动词,不能作为表示状态,所以买这个动作不能持续,不能与具体的一段时间连用。 本句也可以这样表达 THE BOOK WAS BOUGHT (BY ME) FOR FIVE YEARS AGO.

1.选C.因为鞋是在peter到之前就售出了,而peter到用的是came一般过去时,过去的过去则是过去完成时,而鞋是被人售出,所以用被动语态had been。

2.have been doing是完成进行时,表示从过去到现在一直持续的动作,而have done 表示过去某个时段完成的动作,或状态。

3.I have been bought the book for five years错误,该句主语是I,是执行买书的主体,应用主动形态。正确的应为:i have bought the book for five times这本书我已经买了5次.

选C用过去完成时,因为时间状语从句用的是过去时,所以主句应该用过去完成式
have been doing是现在完成进行时态,重点强调do这个动作的持续状态,have done是现在完成时,重点说明do这个动作已经完成.短暂性动词不能用完成进行时态,持续性动词可以
错了,正确的表达是I have bought the book for five years.或The book has been bought by me for five