现在进行时与现在完成时的区别一例

I ______ on a sofa because my parents have come for the  weekend.

A. had slept         B. was sleeping

C. have slept       D. am sleeping

正确答案是 D,为什么呢?我选的 C。求老师分析一下!

请先 登录 后评论

最佳答案 2015-05-03 23:18

I ______ on a sofa because my parents have come for the weekend.

A. had slept         B. was sleeping

C. have slept        D. am sleeping

1. I am sleeping on a sofa because my parents have come for the weekend. 这句话的含义是:我眼下在沙发上睡,是因为父母来到我家过周末。——因果关系非常明确

【说明】现在进行时,可以表示近阶段正在发生的动作,并非指说话时一定正在进行。所以是正确的。

2. I have slept on a sofa because my parents have come for the weekend. 这句话的含义是:我(过去)在沙发上睡过觉了,因为父母来到我家过周末。——之间没有因果关系

【说明】I have slept on a sofa 相当于 I slept on a sofa. 现在完成时跟一般过去时,没有本质上的区别,都是指发生在过去的事情,跟because从句不存在因果关系,所以是错误的。

我再举一个对话的例子,看看现在完成时的真正含义。

—Where is Tom?

—________.

A. He has been out.  B. He is out.

估计有不少网友会选择 A。其实,A 是错误的,是对He has been out.的理解出现了问题。这个题目的正确答案是 B。He is out. 汤姆出去了,不在家。(指现在的情况,回答了问句所提问的问题)

那么,Tom has been out. 是什么意思呢?它的意思是:汤姆外出过,现在回来了。

如果用 He has been out.回答,看起来好像很完美(现在完成时表示对现在的结果或影响),其实不然。因为He has been out. 跟He was out. 没有本质的区别,He was out.意为“他过去外出了。”(现在是否回来尚未可知),没有Tom has been out. 那样强调“已经回来”的结果 。属于答非所问。


请先 登录 后评论

其它 0 个回答

  • 1 关注
  • 1 收藏,4675 浏览
  • 春暖花开 提出于 2015-04-25 12:27

相似问题