现在完成时的用法

现在完成时的形态是:have+过去分词
I have seen her before.这句比较好理解 意思是:我以前曾见过她
I have been to America.请问这里为什么用been而不是gone.意思是:我去过美国. 就和上句中的"见"一样用seen.那么去应该用gone才对呀!
到底have been和have gone有什么区别,如何判断什么时候用have been 什么时候用have gone?

其实很简单啊!在现在完成时中,表示去过某地并且已经回来时,用been作go的过去分词。这可以说是一种特殊的习惯用法,这是英语中的一种默认的习惯。
如果用have gone,这句话的意思就是 I am now in America or am on my way there.因为go是一个瞬间性的动词,不能表示延续
用have been,这句话的意思就是,I went to America and now I have returned.
就是这么点区别
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-04-19
不能这样依次类推,首先这里有动作和状态之分。比如你去了美国和你在美国一年了,前者表示动作,表示正在路上或到了,后者是已经在美国,住了一段时间。比如他来美国一年了。he has been in America for one year .他去美国了。he has gone to america ..他已经去了,但不知道是到了还是在路上。强调一种动作。本回答被提问者采纳
第2个回答  2009-04-19
have gone to 表示去了没回,主语是第三人称。
E.G Where is he?He has gone to London.他去哪里了?他去伦敦了。

have been to 表示去过,与次数连用(见例句)
E.G Have you been to Paris?Yes,I have been there several times.你去过巴黎吗?我去过几次。

have been in +地点+一段时间
E.G My father has gone to London .He has been there for two months.我爸爸去伦敦了 。他已经去了两个月了 。
第3个回答  2009-04-19
has gone=去了没回来
been=去了又回来
第4个回答  2020-02-09
相似回答