英文过去式和过去/现在完成式

看书中 他写了 For 会用现在完成式
但又给了例子 We played badminton for three hours.
为什么不用完成式?
而且这句子用过去完成又行不行?
We had played badminton for three hours?

语境不同,采用的时态也不同的。
一、比如说,咱俩上周打羽毛球了,我今天跟A说的时候就可以说:We played badminton for three hours last week.
上周我俩打羽毛球打了三个小时。
二、假如我们现在正在打羽毛球,从开始到现在已经三个小时了,就可以说:We have palyed badminton for three hours.
三、不可以用had,因为for是表示一段时间的持续。过去完成时用来表示过去已经完成的动作,这个动作已经完成,已经结束,还怎么持续呢?已经完成的,就不能用for了。
若有问题,欢迎提问。希望帮到你。追问

谢谢您的解答,had played後面我想加个when xxxx 才行吧。。。

追答

不客气。
可以,比如说,We had palyed badminton when sb. was here. 当某人在这儿的时候,我和他打过羽毛球了。 过去完成时后边一般是跟时间点,不跟时间段。

追问

那么请老师替我解答最後一个问题
499241503.html

谢谢您!

追答

什么问题?

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-11-19
for 在英语中并没有硬性要求一定要跟完成时连用。
仅仅表示一个动作或者状态的持续的时间段

完成时表示,过去发生的事情,对现在有影响,或者动作状态持续到现在。
I have finished my homework.
She has divorced.
We have successfully complete the primary test of the new product.
I have been in London for two weeks.
They have learned English for years.
动作都是过去发生的,强调对现在的影响(简单的说,就是现在聊过去,翻译成“已经”或者“之前”)

过去完成时:表示过去的过去,也就是从过去的角度看,从当时角度来说之前发生的动作。
一般出现在复合句中,或者上下文中。
The boss of the jewerly shop had the workers decorated the show room. Suddenly someone smashed the glass.追问

因为我明天要考试,正是考这些
那我应该根据内容再选择答案吧??

追答

反正for 不能只是认为跟完成时挂钩的就行了。
这是我们应试教育的悲哀

追问

passive, punctuation, conditional,等等的grammar接踵而来。不掌握快捷的方法很能得分啊

第2个回答  2012-11-19
We played badminton for three hours.
陈述客观事实,就是想告诉你一个事实:我们打了3个小时羽毛球了。

We have played badminton for three hours.
强调过去某个动作一直持续到现在,还有可能继续持续下去,或者是对现在产生的影响(比如说我们都打了3个小时,还要不要继续,或者去休息)

过去完成时表示过去的过去,谓语动词的动作发生在过去的某个时间之前,句中一般有具体的过去时间状语,因此该句不能用过去完成时

eg: He had left his bag on the 4:30 train.本回答被提问者采纳
相似回答