作业帮 > 英语 > 作业

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

来源:学生作业帮 编辑:作业帮 分类:英语作业 时间:2024/05/21 12:46:54
英语翻译
用一般过去还是 现在完成?给个翻译.
I have been to Shanghai 这句后面能 加 时间状语吗?我听别人说是 不能加,说是 不能持续.have been to 这个动作,在过去已经结束了把?
have been to XX 后面到滴能不能跟 X years ago 这样的表达啊。
2.have been to XX 是不是 不能 跟 for 2 years
正确的应为: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楼主:还是希望你去查下语法书,或者问问老师,答案就很明显了.(本来没有打算写这么多-_-)