解释一下瞬间动词用于完成时,其肯定式不能和表示时间段的词连用

附图。我是真没看出来甚至觉得错的也一丁点毛病都没得。。

没看出来错误,是因为思考的角度不一样。
瞬间动词:表示一发生就结束,所以,不能跟一段时间状语连用。
比如:see看见(一发生就结束了);come来;marry结婚(发生就结束)
其它时态也是不跟一段时间状语连用的。
如:
He died for two years.也不对的。
否定句中,这个动作没发生,所以,可以跟一段时间状语连用。
He has not come here for two years.他两年都没(发生)来这里了。追问

我想问的再仔细一点
He has been here for two hours
这句是用的现在完成时吗

he has come here for two hours
这句和上句就差了一个“been”
为什么就是错的呢

That man has been dead for five years 这句应该也是现在完成时吧。
that man has died for five years 这句是啥时态我都很迷惑

追答

That man has died for five years.也是现在完成时。
死是不能“死”五年的,所以,不能加for five years
但可以说:
He has died.

追问

那前面的呢

追答

be dead指的是状态,意思是“是死的”状态。所以可以用时间段。动作与状态是两个不同的概念。

温馨提示:答案为网友推荐,仅供参考