英语翻译用一般过去还是 现在完成?给个翻译.I have been to Shanghai 这句后面能 加 时间状语吗?

英语翻译
用一般过去还是 现在完成?给个翻译.
I have been to Shanghai 这句后面能 加 时间状语吗?我听别人说是 不能加,说是 不能持续.have been to 这个动作,在过去已经结束了把?
have been to XX 后面到滴能不能跟 X years ago 这样的表达啊。
2.have been to XX 是不是 不能 跟 for 2 years
LNXX39 1年前 已收到6个回答 举报

qianmao 幼苗

共回答了18个问题采纳率:83.3% 举报

正确的应为:I went to Shanghai three years ago.三年前我到过上海.
使用一般过去时
(1)I have been to Shanghai.意思是我以前去上海,到我现在还一直在上海.
不能加具体的时间点(不能和表示具体时间的时间状语连用),如yesterday,last year,ago,three years ago.(错误:I have been to Shanghai three years ago)
但是能和表示"直到现在"时间状语连用,就是说可以加so far,ever,since,for等等.(正确:I have been to Shanghai for three years.我到上海3年了)
(2)have been to 这个动作,在过去已经结束了吧?
没有结束,持续到现在.过去就结束的动作到用过去完成时(had benn),使用限制较多,也不能放在这个句子里面用,所以1楼和3楼的回答是错误的,使用过去完成时必须一过去某一时间作为前提,这个前提通常需要加by,before短语来表示,或者有从句(过去时)做时间状语.
但是,如果是在一定的上下文中,时间状语也可以不用.
TO2楼的:"have been to表示去过某地而且回来了,如果用一般过去时就不能表示是否回来了"是明显错误的.现在完成时的定义就是:表持续,就是过去时间发生的动作,一直持续到现在.
你真的是在美国的吗?麻烦不要误人子弟吧.
TO楼主:还是希望你去查下语法书,或者问问老师,答案就很明显了.(本来没有打算写这么多-_-)

1年前

4

Transfei 幼苗

共回答了510个问题 举报

i had been shanghai 3 years before

1年前

2

学习8 幼苗

共回答了1个问题 举报

应该是I have been to Shanghai 3 years ago. have been to表示去过某地而且回来了。 如果用一般过去时就不能表示是否回来了。 这里显然可以加时间状语。这个动作可以持续。而且 3 years ago是过去的一个时间点,而不是一段时间,所以这个动作是否可以持续不影响这个时间状语的添加。
相信我,我在美国,英语一定不会差啊...

1年前

1

haiyan200 幼苗

共回答了19个问题 举报

我同意四楼的观点!最好直接问英语老师!

1年前

1

fedora5 幼苗

共回答了348个问题 举报

回答者: famous000 - 江湖大侠 八级 9-8 08:24
的答案应该把 before 改成 ago, 就对了~~

1年前

0

ll海南ll 幼苗

共回答了1个问题 举报

I have been to Shanghai,意思是说我曾经去过上海。是讲从过去任何个时刻一直持续到现在这一时刻的整个时间段里。到现在为止你完成了去上海这个行为,你曾经去过上海了,所以是用的现在完成时。强调的是你去过。
I went to Shanghai in 2005,我2005年的时候去过上海,或者是I went to Shanghai 3years ago,我三年去去过上海。 ...

1年前

0
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 21 q. 0.017 s. - webmaster@yulucn.com