|
1.题目出得不是很严谨,如果在three前加for,即for three times.那么答案 D就是100%正确了。 2.A不能算错,正如之前所说,这是题目不严谨造成的,但是D是最佳答案。 3.Last year I went to Beijing three times。是对的,因为有具体过去的时间状语last year. 4.一般过与现在完成时主要考的区别就是 是否对现在产生影响,可以从具体时间状语能够判断出。 以我的理解一般过去时是陈述过去发生的动作或是过去所处的一种状态. 现在完成时则是说话人站在现在的立场上陈述自己做过某件事情. 依照你举的例子 一般过去时的说法应该是:Last year I went to Beijing "the 3rd time". 或是:Last year I went to Beijing "three times" 完成时的说法应该是:"By the" last year I "had" been to Beijing three times.应该用过去完成时. 现在完成时的说法应该是:I have been to Beijing (for) three times. 我想我只能解释到这个地步了.有不对的地方还要多谅解. GO TO这类动词是表动作的,不是用来表示状态的。第一句从狭义上讲是陈述一种状态,是说“我去过北京3次”,最重要的标志就是THREE TIMES,在没有其他限制时(如后面举的LAST YEAR这种表具体时间的词,有了LAST YEAR,就可以把去年看作一个时间点而不是时间段,所以可以用GO),我们都看作是对现在以前的状态的统计描述,即到现在为止我去过北京3次了。只能用HAVE BEEN表示这种状态。那么哪些时候我们用GO TO呢?举些例子帮助理解,如"I will go to beijing tomorrow""My parents are there so i have to go to beijing",注意到了吗,这些句子一般不会说去北京多少次了,它的重点在于GO,而不是去过多少次。至于语法上的具体分析请参看其他沪友的讲解,我只能解释这些。 作为选择题,需要的是最佳答案 过去时是在过去的某一点发生的动作,如果是持续性的要么用过去进行时要么是完成时,完成时是动作发生在过去并对现在有影响或持续 选时态看时间状语,这里的去年,动作是去北京,在一年这个时间段内我去北京的次数.要用现在完成时,而GO 作为一个短暂性动词,不能用中文说 我去了多久 他只表示一个从A到B的动作,不能与几次同时出现,D则可以表示去了又回了,是状态. went(go)表示去,而have been 表示在,显然have been要合适。事实上,这个只要有一定的语感就可以直接判断了,不用管它为什么,因为英国人这样说! 如果“three times"前有for,选D绝对没错,强调的是过去对现在造成的影响。但它有last year具体的过去时间,强调的是过去的动作时是went 比较好 我认为,这个题只能选D,我的理解是go是一个当时实施的动作,表示到那个地方去了,不管是否到达也不管是否已经回来,只是表示在已经过去的那个时间点做了那个动作,go是不能和表示频率的时间状语连用的,只能和时间点的状语连用,在一个时间点上的动作是不可能重复发生的;而be是一个状态的描述动词,表示在某个时间段“存在”于某个地点,题目一般的翻译是“我去过北京3次”,内含的意思是,在已经过去的某3个时间段里,我呆在北京,我说这个话的时候,我已经在北京呆过了。所以我觉得这道题实际是考查的go和be的用法的区别,而不是过去时和过去完成时。 而过去时和过去完成时都表示说话之前的动作,有时候是可以用在同样的句子中( 没有明确的时间状语),但表达的意思略有区别。沿用上面的例子: 1、He went to Beijing.他去北京了。(他的去向是北京,陈述事实,对你我并没有什么影响) 2、He has gone to beijing.他已经去北京了。(他已经出发,走掉了,你要是找他就找不到了) 3、He went to beijing yesterday.他昨天出发去北京了。 4、He has gone to beijing last year.他去年就去北京了。(现在都还在那呢) 5、He has been to beijing last year.他去年去了一次北京。(现在已经回来了。) 大家不妨体会一下其中的意思。 ... 你是初一的学生吧。 |
|
6天前 cx123456sun : qingyi71 回答很完美,很清楚 |