高人来解答一道简单的英语单项选择。

来源:百度知道 编辑:UC知道 时间:2024/06/27 21:52:24
Join isn't here at the moment.She ___ to the railway station an hour ago.
A.go B.went C.has gone D.has gone

为什么是B? C错那里?

因为有一个an hour ago ,不能用完成时态。只能用过去时

与现在完成时搭配的表示时间的一般是for,表示一段时间内一直发生的动作。而你这个 an hour ago明显表示的是过去的一个时间点,过去的一个时间点上发生的动作只能用动词的过去时态。Join isn't here at the moment.这句话放在这里是起混淆视觉的效果,因为现在完成时表示过去发生的事对现在有影响,这句话就会误导你用完成时。但是后面那句话的an hour ago就已经决定了句子只能用动词的过去式,与前面无关。对于动词的时态的选择,只要分析一下句子中表示时间的状语就可以确定了。表示一段时间如for,还有already,yet,ever before ,since引导的句子等,就是用现在完成时,过去一个时间点上发生的动作,就是过去式。这些标志都很明显的。

个人认为,用完成时需要一些特定的语境词,比如yet,already之类的;这个句子一来没有明确的语境词,二来并没有强调动作已经完成的意思,三来选项里有一个那么合适的went,和an hour ago相呼应,ago就是过去式的语境词啊~

现在完成时表示过去发生的事对现在有影响,你这又没有上下文,何来的影响呢?

现在完成时与一般过去时的区别
1. 一般过去时表示过去某个时间发生的事、存在的状态或经常发生的动作。说话的侧重点只在于陈述一件过去的事情,不强调对"现在"产生的影响。如:
He visited Guilin in 1998.他1998年参观过桂林。(只说明去桂林的时间)
2. 现在完成时表示动作发生在过去,对现在造成了影响或产生了结果。不与确定的过去时间状语连用。如:
Jill has bought a new computer.吉尔买了一台新电脑。(着重点是现在有了一台新电脑)
3. 两种时态的区分
(1)一般过去时的谓语动词用过去式,而现在完成时的谓语基本构成是"助动词have /has +过去分词"。如:The film started at 7 o’clock. He has been a teacher for many years