填现在完成时和过去完成时好像都有道理

一道填空题:

—Alice came back home the day before yesterday. 

—Really? Where _______?

答案是:had she been。

但是我觉得如果平常口语中回答 has she been 也是可以的。因为虽然说回来是前天发生的 旅行是回来之前完成的 但是如果作为一个整体来说,旅行就是过去发生的 并切也对现在造成影响。请老师点评!谢谢!

请先 登录 后评论

最佳答案 2016-10-04 23:30

Alice came back home the day before yesterday.

Really? Where____?

答案是:had she been

但是,我觉得如果平常口语中回答has she been也是可以的。

因为虽然说回来是前天发生的,旅行是回来之前完成的,但是如果作为一个整体来说,旅行就是过去发生的,并且也对现在造成影响。

请老师点评。

【答】正确答案是had she been,而非has she been。

简单地说,“现在完成时”跟“过去完成时”,都与过去时间有关。但是,“现在完成时”是用来表达过去动作(或状态)对现在影响的,而“过去完成时”则是表达过去发生的动作(或状态)时间先后相比较的,在前的那个动作(或状态)使用过去完成时。

就本句而言,正确的时态是“过去完成时”,说明had been早于came back,体现出“过去的过去”。

你说口语中可以使用has been,这个当然可以,因为口语是非正式英语。此外,口语用了现在完成时,对方也不会产生误解。

但是,你后面的这个解释是不可取的,因为使用现在完成时没有道理

因为虽然说回来是前天发生的,旅行是回来之前完成的,但是如果作为一个整体来说,旅行就是过去发生的,并且也对现在造成影响。

使用“现在完成时”的唯一理由是:这是口语,是非正式英语,以不产生误解为前提。


看了陈老师的如下解答:

“where has she been” 是绝对错误的,甚至在口语中也不行。但是,有的情况下就可以用现在完成时,比如,一个老师看到某个同学的座位是空的,就可以问:where has she gone.

我补充一下:Where has she been? 和Where has she gone? 都是正确的句子,只是表达的含义不同而已。

前者的意思是:“她去过哪儿了?”(已经返回)

后者的意思是:“她到哪儿去了?”(尚未返回)

还有:完成时(包括过去完成时)的一个重要的功能就是用来对比一句话中两个动作的先后关系。

——我认为,这仅限于过去完成时,现在完成时似无此功能。




请先 登录 后评论

其它 1 个回答

陈先龙  
擅长:英语

    你所提供的例子来自一本语法书。

正确答案:

    had she been

原因解析:

-Alice came back home the day before yesterday.

-Really? Where____?

    完成时(包括过去完成时)的一个重要的功能就是用来对比一句话中两个动作的先后关系。这个对话中第一个人说Alice前天回家了,第二个人接着问:之前(came back之前)她去了哪?因此这是两个过去动作的时间比较,“去”发生在过去的动词came之前。所以,应该用过去完成时。如果使用“has she been” (也是“之前她去了哪”的意思),那么听话人就不明白问的是哪个时间段的问题:是问came back之前去了哪,还是问 came back之后去了哪。所以,“where has she been” 是绝对错误的,甚至在口语中也不行。但是,有的情况下就可以用现在完成时,比如,一个老师看到某个同学的座位是空的,就可以问:where has she gone或where did she go.

老外观点:

我的求助

The following question is cited from a set of grammar exercises.
- Alice came back home the day before yesterday.
- Really? Where ______?
  A. has she been B. had she been
  C. has she gone D. had she gone
The correct answer is B. However, my choise is A. Which one do you think is possible?

老外回答

No: there is a simple past tense in "came back", so Alice's whereabouts before that are further back in the past, for which you need the pluperfect tense. Option (B)  would be grammatically correct.

注:问了不止一个老外,但是没有一个人认为A是可选项。

继续回答

(好像一个帖子只能问一个问题吧?)

    关于你的第二个问题:what do you think of this kind of tv set, which ___in shanghai? 

    如果是“买”的话就用 was bought,因为那是过去的动作;如果是“制造”的话一般用is made,因为这个工厂过去在生产,现在也在生产,将来还将继续生产。但是如果这个工厂现在已经关闭,就用was made。

回答刘老

    从这个例句就可以看出现在完成时照样可以表示动作的时间层次:

    I refuse to explain it again, because I have strengthed it many times.我之前已经强调很多次了。(strengthen先于refuse发生。)

    或许有人会说“那表示过去发生的动作对现在的影响”,但即便如此,也不能据此否定它所显示的时间层次。

   此外,小说有时会用一般现在时进行叙述,比如: We arrive at the house,but they have left.(两个动作的时间层次一目了然。)

请先 登录 后评论
  • 1 关注
  • 1 收藏,3851 浏览
  • 马若雨 提出于 2016-07-01 21:18

相似问题