问一个英语小问题,请一定帮帮我!!!

来源:百度知道 编辑:UC知道 时间:2024/05/22 10:34:44
错误:He has died for three years.

正确:He has been dead for three years.

我知道die是非延续性动词,不可与表示一段时间的状语连用,可为什么底下那句就是对的啊?底下那句到底是什么时态什么格式我从没见过啊?he has been我理解应该是he is的现在完成时,dead是die的形容词,但这种现在完成时+形容词的形式我从来没有遇到过。那么这里has been+形容词怎么解释?另外我想知道主语+has benn的后面都可以加什么?

拜托一定帮我解释清楚啊谢谢了!!!

have been是现在完成时,意思是到现在为止怎么怎么样,主语是第三人称,所以后面加has;been是be的过去分词(be是助动词),have +过去分词,表示的时态就是现在完成时,助动词后面加形容词没有问题。如果是had been的话,就是过去完成时了,意思是到过去为止怎么怎么样,关于这两个时态,在高中还是初中课本啊,学了好久,我忘记了不好意思,有一课专门是讲这几个时态的。

has been接一个持续的动作 所以是对啊

死作为动词是瞬间的 如果要表示
"他已经死了三年了" 只有用其形容来词表示这一状态
has been 后面可以加表示状态的形容词 也可以加持续动词ing形式(即现在完成进行时)
p.s. 很久没搞语法了 基本是凭语感 但现在发现有些语法的不扎实对英语的进一步提高形成了障碍 所以对lz严谨求实的学风在下很是赞赏哈

错误:He has died for three years.
正确:He died for three years.
这里died是动词,表瞬间动作,die不能用完成时态

而在He has been dead for three years里,
dead是形容词,用has been是因为后面有for three years,表示“至今,已经去世三年了”

其实He is dead也是正确的,He is dead for three years也没有错误,但是由于for three years的补充, 用现在完成时的话,表达的语境更地道。

第一句He has died for three years.错在这句话表示他这个死亡的动作一直在重复,也就表示他一直在重复死.第2句是对的,他已经死了3年了

死作为动词是瞬间的 如果要表示
"他已经死了三年了" 只有用其形容来词表示这一状态
has been 后面可以加表示状态的形容词 也可以加持续动词ing形式(即现在完成进行时)