问一个稍有难度的高中英语时态问题 高手进 懂的来

for+一段时间应该用现在完成时 如 I have learn english for 3 years
但有的时候for+一段时间为什么用一般过去时呢
比如 I learned english for 3 years,and now I work as a translater.这个题为什么用learn的一般过去时

很多类似的题 老师讲了我也不懂

第1个回答  2011-03-09
现在完成时,两个用法
1. 从过去一直发生到现在,并有可能延续
2. 对现在有影响,如果是一般过去式,则强调过去的动作,现在完成时,强调对现在的影响。
I have learned English for 3 years. 3年来我一直在学英语(并有可能继续学下去)
I learned english for 3 years, and now I work as a translater. 我现在是翻译员(学习英语的动作不再延续)。这句话如果有后文,后面说的是我成为翻译员是因为我学习了三年英语,那么用have learned 也是可以的。
第2个回答  2011-03-12
现在考试题一般都是死抠,外国人一样有用错的,这有什么好讲的。
高考这是一类题型,出题者一般都是白痴。 就是说:
一个人 ________ (动词) + 各种宾语 + for + 段时间, 转折 now 不干了(或者干别的去了)。
这种题型背住就好 没什么价值的题。
非要理解 就是 用现完的 动作持续到现在
用过去的 动作已经结束
望采纳本回答被提问者采纳
第3个回答  2011-03-09
这个是因为for+现在完成时表示的是过去到现在,并有可能继续下去的状态,“ I have learn english for 3 years”,这句话错了,应该是“ I have learned english for 3 years";第二句是讲“我已经学了三年英语”,暗含“我现在已经不再学了”的意思
第4个回答  2011-03-08
表示过去的学习了3年,也可以用had加在前面
不过我觉得这句话有问题,做翻译的同时也在practise/improve英语,所以我认为原句如果是 have learned更好,而且这样在时态上前后一致,现在完成时也是现在时的一种,与后半句的一般现在时对应。
另外,English首字母必须大写,这个是专有名词,规定必须大写首字母的,比如Chinese。
第5个回答  2011-03-07
句中有“now”意思是现在我是一名翻译。在我当翻译之前,我学了三年的英语(I learned English for 3 years.)是过去式。所以用learned/learnt 。
相似回答