现在完成时表示过去到现在的状态和行为
用现在完成时来表达从过去开始并持续到现在的一种状态或重复的行为。
这个时态常与下列时间表达连用:
…for+一段时间
…since+具体的时间点
基本结构
肯定的
Subject + have / has + past participle + object(s) + time Expression
主语+ have / has +过去分词+宾语+时间表达
I have lived in China for four years.
否定的
Subject + have / has not (haven't, hasn't) + past participle + object(s) + time Expression
主语+ have / has not (haven’t, hasn’t) +过去分词+宾语+时间表达
Max hasn't played tennis since 1999.
问题
(Question Word) + have / has + subject + past participle + object(s) + time Expression
(疑问词)+ have / has +主语+过去分词+宾语+时间表达
Where have you worked since 2002?
现在完成时用来表达最近发生的事情
现在完成时通常用来表达影响现在时刻的最近事件。这些句子通常使用时间表达'just', 'yet', 'already'或'recent '。如果你给出的是过去的具体时间,一般过去时是必须的。
这个时态常与下列时间表达连用:
just
yet
already
recently
基本结构
肯定的
Subject + have / has + just / recently + past participle + object(s)
主语+ have / has + just / recently +过去分词+宾语
Henry has just gone to the school.
否定的
Subject + have / has not (haven't, hasn't) + past participle + object(s) + time Expression
主语+ have / has not (haven’t, hasn’t) +过去分词+宾语+时间表达
Peter hasn't finished his homework yet.
问题
(Question Word) + have / has + subject + past participle + object(s) + time Expression
(疑问词)+ have / has +主语+过去分词+宾语+时间表达
Have you spoken to Andy yet?
不确定的过去事件的现在完成
现在完成时通常用来表达过去某个未确定时刻发生的事件,或到目前为止累积的生活经验。记住,当你使用一个特定过去时的表达时,选择一般过去时。
这个时态常与下列时间表达连用:
twice, three times, four times, 等等
ever
never
基本结构
肯定的
Subject + have / has + past participle + object(s)
主语+ have / has +过去分词+宾语
Peter has visited China three times in his life.
否定的
Subject + have / has not (haven't, hasn't) + past participle + object(s) + time Expression
主语+ have / has not (haven’t, hasn’t) +过去分词+宾语+时间表达
I haven't played golf many times.
问题
(Question Word) + have / has + subject + (ever) + past participle + object(s)
(疑问词)+ have / has +主语+ (ever) +过去分词+宾语
Have you ever been to France?
现在完成进行时
现在完成进行时用来表达当前活动已经进行了多长时间。记住,进行时形式只能与动作动词连用。
这个时态常与下列时间表达连用:
…since+具体的时间点
…for+一段时间
基本结构
肯定的
Subject + has / have + been + verb + ing + object(s) + time Expression
主语+ has / have + been +动词+ ing +宾语+时间表达式
He's been cleaning house for two hours.
否定的
Subject + has / have not (hasn't / haven't) + been + verb + ing + object(s) + time Expression
主语+ has / have not (hasn’t / haven’t) + been +动词+ ing +宾语+时间表达式
Janice hasn't been studying for long.
问题
(Question Word) + has / have + subject + been + verb + ing + object(s) + (time Expression)
(疑问词)+ has / have +主语+ been +动词+ ing +宾语(s) +(时间表达)
How long have you been working in the garden?