一般过去时Where were you与现在完成时Where have you been的区别

请问此题如何选择:

Millie,where______ ? I called you many times and nobody answered it. 

A. were you   B. have you been   C. did you go   D. have you gone

我倾向于选择B(现在“已经回来”了,两人在当面对话),但是参考答案是A!如果选择A,那么C不是也正确吗?请问如何辨析?谢谢!


请先 登录 后评论

最佳答案 2019-02-12 00:20

我和陈老师有不同看法。我觉得这个题的正确答案应该是B where have you been.

理由如下:

1 Where have you been? 完全可以用于刚碰到某人时,问他现在以前这段时间他在哪里。假如此人刚从图书馆出来,他可能回答 I have been in the library since this morning. 状态完成体可以表示一个状态持续到说话时,状态可能刚结束,也可能还会持续下去。

2 一般过去时的使用,相当于名词的特指,即听说双方对谓语动词指向的时间达到共识时,才能使用。否则听话人无法知道这个过去时间是几分钟、几小时、几个月、还是几十年前甚至几万年前。除非句子有确切时间状语表示出这个时间。所以如果没有时间状语,突然问某人 Where were you? 听话人不知道你问他什么时候在哪里?因为他去年在北京,上个月在上海,上周在西安,昨天回到本地,今天早上到刚才之前一直在图书馆。他无法回答你的问题。如果句子有时间状语,如 Where were you this morning? 则听话人知道你问的什么时候,就好作答了。

所以,这个句子如果按照语法原则,最佳答案应该是B 现在完成时。

请先 登录 后评论

其它 1 个回答

陈才   - 英语教师
擅长:中考英语,词法问题

Millie,where were you? I called you many times and nobody answered it.

参考译文(1):Millie,你刚在在哪里,我打很多次电话给你,都没有人接电话。 

参考译文(2):Millie,我打电话给你的时候,你在哪里,我打你很多次电话都没有人接。

A. were you (在过去我打电话那个时候/特定时间,你在哪里)  

B. have you been (从过去我打电话到现在为止,你在哪里,但人已经回来不符合逻辑) 

C. did you go  (在过去打电话的时间,你去了哪里,不符合逻辑) 

D. have you gone(去你了什么地方,人没有回来的,但是人已回来。不符合逻辑)

请先 登录 后评论
  • 1 关注
  • 1 收藏,7780 浏览
  • dean623623 提出于 2019-01-12 20:24

相似问题