刻意练习-英语时态

雅思前考官教你高效学语法

如何高效地学习英语语法? - Paul Winterbottom的回答 - 知乎
https://www.zhihu.com/question/264195321/answer/882789872

T110 Past and Past Perfect Tense过去时和过去完成时

https://www.english-grammar.at/online_exercises/tenses/t110-past-past-perfect.htm

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
“助动词had+动词的过去分词”(had没有人称和数的变化)
过去完成时表示一个动作或状态在过去某一时间或动作之前已经完成或结束

过去时(simple past tense)和过去完成时(past perfect tense)都是表示过去发生的事件或动作,但它们的用法和意义有所不同。

过去时(simple past tense):
过去时用于描述在过去某个时间点发生的动作或事件。它通常与具体的过去时间状语连用,例如:yesterday, last week, in 1990等。
构成:主语 + 动词的过去式

例如:

I visited my friends last weekend.(上周末我拜访了我的朋友们。)
She studied English in college.(她在大学时学习了英语。)
过去完成时(past perfect tense):
过去完成时用于表示在过去某一时刻之前已经发生或完成的动作。它可以表明在过去两个事件中,一个事件发生在另一个事件之前。过去完成时常与过去时一起使用,以表示先后顺序。
构成:主语 + had + 动词的过去分词

例如:

I had finished my homework before I went to the party.(在我去参加聚会之前,我已经完成了作业。)
She had already left when I arrived at her house.(当我到达她家时,她已经离开了。)
总结一下,过去时表示过去某个具体时间发生的事件,而过去完成时表示在过去某一时刻之前已经发生或完成的动作,常用于强调事件的先后顺序。
  1. They were good friends. They knew each other for quite a long time.

    they were说明事情发生在过去,他们过去是好朋友。他们过去了解彼此。

    正确答案:had known

  2. When we arrived at the party everybody had danced.

    we arrived说明是过去抵达的,过去发生的某个时刻,每个人都在跳舞,应该用过去完成时。

    正确答案:was dancing,用过去进行时

  3. After the referee had blow the whistle the players began playing.

    After代表某个时间点之后,the players began playing说明是正在进行的状态。

    正确答案:had blown

  4. After the orchestra had finished the concert they received standing ovations.

  5. Had she looked at you when I phoned ?

    正确答案:Was she looking

  6. There had been an accident before we got there.

  7. He was working in the garden all day yesterday

    all day说明事情一直在进行,yesterday说明事情发生在过去。因此用过去进行时。

  8. The letter came only a few minutes after she had left.

  9. Before we played in the playground we had done our homework.

  10. When my sister called yesterday I was cleaning up my son’s room.

    昨天,当我的姐妹打电话的时候,我正在打扫儿子的房间。

  11. The hikers had slept in the tent when the guide got back.

    正确答案: were sleeping

  12. All the journalists had read the paper when I entered.

    正确答案: were reading

  13. All the journalists were reading the paper when I entered.

    错误答案:had read

  14. Nobody knew where she had gone.

    错误答案:gone,knew说明是发生在过去,had gone是过去完成时,说明过去没有人知道她去了哪里。

  15. She felt better after she had taken some medicine.

  16. I saw the soldiers as they had marched over the bridge.

    正确答案: were marching

T109 Past Perfect Tense - Simple and Continuous

https://www.english-grammar.at/online_exercises/tenses/t109-past-perfect.htm

1
2
3
4
5
“助动词had+动词的过去分词”(had没有人称和数的变化)
过去完成时表示一个动作或状态在过去某一时间或动作之前已经完成或结束

过去完成进行时 had been doing
强调动作从过去的过去开始一直延续到过去某个时间点。
  1. By the time they got to the theatre

    got说明事情发生在过去

    the play had already started.

    使用的是过去完成时,过去the play已经开始了

  2. When he got to the finish line

    got说明事情发生在过去

    had ran for three hours,回答错误

    正确答案是had been running,for three hours说明事情持续了3个小时。

    句子的意思是:当他到达终点线时,他已经跑了三个小时

    因此用过去完成进行时,强调完成的时间

  3. By the time they left town

    by the time说明事情发生在过去

    the mechanic had repaired the car.

  4. Joe had brushed his teeth by the time he went out.

    he went out说明事情发生在过去,过去的某个时间点他刷了他的牙,因此用过去完成时。

  5. After they had opened the door they saw that the room was a complete mess.

    错误答案:opened,不能用一般过去时,因为后面的句子强调了他们过去看见了

    they saw代表事情发生在过去,过去看见。

    过去的某个时间点他们打开了门,因此用过去完成时。

  6. We had been working in the garden for a long time when we found the hole.

    we found the hole说明事情发生在过去。

    for a long time说明事情发生了一段时间了,强调持续的时间,因此应该用过去完成进行时

  7. After the storm had stopped we could finally leave the house.

    错误答案:had stoped,stop的过去式要双写p+ed

  8. The football fans had been making trouble for some time before the police arrived.

  9. When the teacher finally came in the boys had been fighting for ten minutes.

  10. When Tommy finally came the girls had been singing for a few hours.

    错误答案:has been singing

T108 - Present Perfect and Past Tense现在完成时和过去时

https://www.english-grammar.at/online_exercises/tenses/t108-present-perfect-past.htm

1
2
3
4
现在完成时: 过去发生或已经完成的动作对现在造成的影响或结果,或从过去已经开始,持续到现在的动作或状态。
have/has + done

能与现在完成时连用词语很多,如副词just, already, yet, before, ever, recently 等
  1. There’s no milk left.

    这句话是一般现在时,Peter过去把牛奶全喝完了。

    错误答案:Peter drank all of it.将它改成疑问句形式。Did peter drank all of it?

    正确答案:Has peter drunk all of it?

  2. George had been living in Tokyo for five years but he left in 2006.

    he left说明是过去时,for five years说明事情持续了5年。

    错误答案:因此用过去完成进行时

    正确答案:lived,过去完成进行时要和过去的事情进行对比,这里没有对比的词语例如by the time, when

    属于一般过去时

  3. Somebody steal my bicycle, so now I have to walk home.

    错误答案:walk home说明是一般现在时,过去有人偷了我的自行车

    正确答案:has stolen,用现在完成时,过去发生或已经完成的动作对现在造成的影响或结果

  4. Mardy graduated from university last July.

  5. He has slowed down a lot since the birth of his child last year.

  6. She has already done her Chrismas shopping.

    错误答案:already did

    正确答案:has already done,因为存在副词already——已经,所以用现在完成时,表示事情已经完成。

  7. The Americans launched a new space shuttle a few years ago.

  8. Who wrote the graffiti on the wall yesterday’s party.

    write的过去式是wrote,用一般过去时

  9. My uncle sang karaoke at yesterday’s party.

    sing的过去式是sang

  10. Our soldiers have not been to Africa yet.

    因为存在yet——还没有,因此使用现在完成时,截至现在为止,我们的士兵还没有去过have not been.

T107 Present and Present Perfect Tense现在时和现在完成时

https://www.english-grammar.at/online_exercises/tenses/t107-present-present-perfect.htm

1
2
3
4
现在完成时: 过去发生或已经完成的动作对现在造成的影响或结果,或从过去已经开始,持续到现在的动作或状态。
have/has + done

能与现在完成时连用词语很多,如副词just, already, yet, before, ever, recently 等
  1. He has read all the Harry Potter books.

  2. She has lost over 6 pounds in the last few months.

  3. This milk tastes not very fresh.

    正确答案:does not taste,用一般现在时的否定形式

  4. Mum! Come quickly. Tom is hitting me. 用现在进行时

  5. I have done a lot of homework so far, so don’t ask me to do yours.

  6. This afternoon I saw the doctor about my skin problems.

    正确答案:am seeing,用现在进行时

  7. Everybody needs money.用一般现在时

  8. Computers becomes more and more popular these days.

    正确答案:are becoming

    用现在进行时。那么什么时候用现在进行时,什么时候用一般现在时呢?

    这个句子中,虽然使用了现在进行时,但其实它在这个上下文中表示的是一种持续发展的趋势。当我们谈论一种正在发生且可能在未来继续发生的变化或趋势时,我们通常使用现在进行时。这个句子表达的意思是,计算机的普及程度在不断提高,这个过程仍在继续。

    例如:

    • More people are using smartphones every day.(越来越多的人每天都在使用智能手机。)
    • Electric cars are becoming increasingly common.(电动汽车越来越普及。)

    相反,一般现在时(simple present tense)通常用于表示事实、习惯或经常发生的动作。如果你将句子改为一般现在时,例如:“Computers become more popular these days”,这并不符合一般现在时的用法,因为它并不表示一个持续的趋势,而只是一个简单的事实陈述。

  9. This is the first time I am driving a car.

  10. They normally print the business cards in New York.

  11. The reason I have got a sun tan is that I have just come back from a trip to Cuba.

  12. Things are really great. Business are booming.

    正确答案:is booming.

  13. My English has improved since I went to Australia.

    错误答案:have improved

    什么时候用have 什么时候用has?

    在英语中,“has”和“have”都是助动词,用于表示现在完成时(present perfect tense)。这两个词的使用取决于主语是单数还是复数。

    当主语是第三人称单数(如he, she, it或单数名词)时,我们使用“has”。例如:

    • He has finished his homework.
    • She has gone to the store.
    • The dog has eaten its food.

    当主语是第一人称和第二人称(如I, you, we, they或复数名词)时,我们使用“have”。例如:

    • I have completed my project.
    • You have done a great job.
    • They have visited the museum.

    在你提到的例句中,“My English”是一个单数名词短语,所以需要使用“has”:

    • My English has improved since I went to Australia.
  14. Some people just take movies so seriously.