【B1-B2-Grammar】18 Past perfect-过去完成时

【B1-B2-Grammar】18 Past perfect-过去完成时

Do you know how to use phrases like They’d finished the project by March or Had you finished work when I called? Test what you know with interactive exercises and read the explanation to help you.你知道如何使用“他们在三月份完成了项目”或“我打电话时你完成工作了吗?”之类的短语?通过互动练习测试您所掌握的知识,并阅读说明来帮助您。

Look at these examples to see how the past perfect is used.查看这些示例,了解如何使用过去完成时。

He couldn’t make a sandwich because he’d forgotten to buy bread. 他没能做三明治,因为他忘记买面包了。
The hotel was full, so I was glad that we’d booked in advance. 酒店已经客满了,所以我很高兴我们提前预订了。
My new job wasn’t exactly what I’d expected. 我的新工作并不完全符合我的预期。

Try this exercise to test your grammar.尝试这个练习来测试你的语法。

Grammar test 1-语法测试1

Past perfect: 1

Choose the correct option to complete the sentences.

  • Question
  1. When she ___ on the course, she had never studied a foreign language before.
    enrolled
    ‘d enrolled
  2. When I closed the door, I realised that I ___ my keys inside.
    left
    ‘d left
  3. She looked really sad but I didn’t know what ___.
    happened
    ‘d happened
  4. ___ when you rang the doorbell?
    Did Sai already leave
    Had Sai already left
  5. This is the oldest building in the town. It ___ over 200 years ago.
    was built
    ‘d been built
  6. By the time I moved in, they ___ the building work.
    finished
    ‘d finished
  7. I opened the door, and ___ inside.
    went
    ‘d gone
  8. I looked in the letter box yesterday and the letter still ___.
    didn’t arrive
    hadn’t arrived
  • Answer
  1. When she ___ on the course, she had never studied a foreign language before.
    ✔enrolled
    ‘d enrolled
  2. When I closed the door, I realised that I ___ my keys inside.
    left
    ✔’d left
  3. She looked really sad but I didn’t know what ___.
    happened
    ✔’d happened
  4. ___ when you rang the doorbell?
    Did Sai already leave
    ✔Had Sai already left
  5. This is the oldest building in the town. It ___ over 200 years ago.
    ✔was built
    ‘d been built
  6. By the time I moved in, they ___ the building work.
    finished
    ✔’d finished
  7. I opened the door, and ___ inside.
    ✔went
    ‘d gone
  8. I looked in the letter box yesterday and the letter still ___.
    didn’t arrive
    ✔hadn’t arrived

填空题及翻译

  1. When she ___ on the course, she had never studied a foreign language before.

    • enrolled
    • ‘d enrolled

    解释: “enrolled” 是简单过去时,表示她报名参加课程的具体时间点。”‘d enrolled” 是“had enrolled”的缩写形式,表示过去完成时。这里不需要过去完成时,因为主句已经用了过去完成时。

    答案: enrolled

    翻译: 当她报名参加课程时,她以前从未学习过外语。

  2. When I closed the door, I realised that I ___ my keys inside.

    • left
    • ‘d left

    解释: “left” 是简单过去时。这里需要表示在“我关门之前”的动作,因此使用过去完成时”‘d left” (had left)。

    答案: ‘d left

    翻译: 当我关上门时,我意识到我把钥匙忘在里面了。

  3. She looked really sad but I didn’t know what ___.

    • happened
    • ‘d happened

    解释: “happened” 是简单过去时。这里需要表示在“我看到她之前”发生的动作,因此使用过去完成时”‘d happened” (had happened)。

    答案: ‘d happened

    翻译: 她看起来真的很难过,但我不知道发生了什么。

  4. ___ when you rang the doorbell?

    • Did Sai already leave
    • Had Sai already left

    解释: “Did Sai already leave” 用的是简单过去时,而这里需要表示在“你按门铃之前”发生的动作,因此使用过去完成时”Had Sai already left”。

    答案: Had Sai already left

    翻译: 当你按门铃时,Sai已经离开了吗?

  5. This is the oldest building in the town. It ___ over 200 years ago.

    • was built
    • ‘d been built

    解释: “was built” 是正确的过去被动语态形式,表示该建筑是在200多年前建造的。”‘d been built” 表示过去完成时的被动语态,但这里不需要过去完成时。

    答案: was built

    翻译: 这是镇上最古老的建筑。它是200多年前建造的。

  6. By the time I moved in, they ___ the building work.

    • finished
    • ‘d finished

    解释: “finished” 是简单过去时。这里需要表示在“我搬进来之前”已经完成的动作,因此使用过去完成时”‘d finished” (had finished)。

    答案: ‘d finished

    翻译: 等我搬进来的时候,他们已经完成了建筑工作。

  7. I opened the door, and ___ inside.

    • went
    • ‘d gone

    解释: “went” 是正确的过去时,表示简单的过去动作。”‘d gone” 表示过去完成时,但这里没有必要用过去完成时。

    答案: went

    翻译: 我打开门,走了进去。

  8. I looked in the letter box yesterday and the letter still ___.

    • didn’t arrive
    • hadn’t arrived

    解释: “didn’t arrive” 是简单过去时。而这里需要表示在“昨天之前”还未发生的事情,因此使用过去完成时”hadn’t arrived”。

    答案: hadn’t arrived

    翻译: 我昨天查看了信箱,信还没有到。

Read the explanation to learn more.阅读说明以了解更多信息。

Grammar explanation-语法解释

Time up to a point in the past-过去某个时间点的时间

We use the past perfect simple (had + past participle) to talk about time up to a certain point in the past. 我们使用过去完成时(had + 过去分词)来谈论过去某一时刻的时间。

She‘d published* her first poem by the time she was eight.* 她八岁时就发表了第一首诗。
We‘d finished* all the water before we were halfway up the mountain.* 还没到半山腰,我们就把水喝完了。
Had the parcel arrived when you called yesterday? 你昨天打电话时包裹已经到达了吗?

Past perfect for the earlier of two past actions-过去完成时用于过去两个动作中较早的一个

We can use the past perfect to show the order of two past events. The past perfect shows the earlier action and the past simple shows the later action. 我们可以用过去完成时来表示两个过去事件的顺序。过去完成时表示较早的动作,过去简单表示较晚的动作。

When the police arrived, the thief had escaped. 当警察赶到时,小偷已经逃跑了。

It doesn’t matter in which order we say the two events. The following sentence has the same meaning. 我们以什么顺序说出这两个事件并不重要。下面这句话也有同样的意思。

The thief had escaped when the police arrived. 警察赶到时小偷已经逃跑了。

Note that if there’s only a single event, we don’t use the past perfect, even if it happened a long time ago. 请注意,如果只有一个事件,我们不会使用过去完成时,即使它发生在很久以前。

The Romans spoke Latin. (NOT The Romans had spoken Latin.)罗马人讲拉丁语。 (不是:罗马人说了拉丁语。)

Past perfect after before-过去完成时之后之前

We can also use before + past perfect to show that an action was not done or was incomplete when the past simple action happened. 我们还可以使用before +过去完成时来表示过去简单动作发生时动作尚未完成或不完整。

They left before I’d spoken to them. 我还没跟他们说话他们就离开了。
Sadly, the author died before he’d finished the series. 遗憾的是,作者在完成该系列之前就去世了。

Adverbs-副词

We often use the adverbs already (= ‘before the specified time’), still (= as previously), just (= ‘a very short time before the specified time’), ever (= ‘at any time before the specified time’) or never (= ‘at no time before the specified time’) with the past perfect. 我们经常使用副词already已经(=“在指定时间之前”),still仍然(=如前所述),just只是(=“在指定时间之前很短的时间”),ever曾经(=“在指定时间之前的任何时间” ) 或 never从不 (= ‘在指定时间之前的任何时间’) 与过去完成时一起使用。

I called his office but he’d already left. 我给他的办公室打了电话,但他已经离开了。
It still hadn’t rained at the beginning of May. 五月初,还没下雨。
I went to visit her when she’d just moved to Berlin. 她刚搬到柏林时我去看望她。
It was the most beautiful photo I’d ever seen. 这是我见过的最美丽的照片。
Had you ever visited London when you moved there? 您搬到伦敦后曾经去过那里吗?
I’d never met anyone from California before I met Jim. 在认识吉姆之前,我从未见过任何来自加利福尼亚州的人。

Do this exercise to test your grammar again. 做这个练习来再次测试你的语法。

Grammar test 2-语法测试2

Past perfect: 2

Choose the correct option to complete the sentences.

  • Question
  1. By the time I could talk to her, she ___ to quit her job.
    decided
    ‘d decided
  2. I looked at the photo and suddenly realised that I ___ that man somewhere before.
    saw
    ‘d seen
  3. First I ___ the salad, then I toasted the bread.
    made
    ‘d made
  4. ___ breakfast when you got up?
    Did James already cook
    Had James already cooked
  5. She didn’t feel like another coffee as she ___ one.
    just had
    ‘d just had
  6. We had the French exam this morning. It ___ as hard as I’d expected, though.
    wasn’t
    hadn’t been
  7. I asked Sara if she wanted to go for a walk, but she still ___ her homework.
    didn’t finish
    hadn’t finished
  8. Dinosaurs ___ hundreds of millions of years ago.
    lived
    had lived
  • Answer
  1. By the time I could talk to her, she ___ to quit her job.
    decided
    ✔’d decided
  2. I looked at the photo and suddenly realised that I ___ that man somewhere before.
    saw
    ✔’d seen
  3. First I ___ the salad, then I toasted the bread.
    ✔made
    ‘d made
  4. ___ breakfast when you got up?
    Did James already cook
    ✔Had James already cooked
  5. She didn’t feel like another coffee as she ___ one.
    just had
    ✔’d just had
  6. We had the French exam this morning. It ___ as hard as I’d expected, though.
    ✔wasn’t
    hadn’t been
  7. I asked Sara if she wanted to go for a walk, but she still ___ her homework.
    didn’t finish
    ✔hadn’t finished
  8. Dinosaurs ___ hundreds of millions of years ago.
    ✔lived
    had lived

填空题及翻译

  1. By the time I could talk to her, she ___ to quit her job.

    • decided
    • ‘d decided

    解释: “decided” 是简单过去时,但这里需要表示在“我能和她说话之前”已经发生的动作,因此使用过去完成时”‘d decided” (had decided)。

    答案: ‘d decided

    翻译: 等我能和她说话时,她已经决定辞职了。

  2. I looked at the photo and suddenly realised that I ___ that man somewhere before.

    • saw
    • ‘d seen

    解释: “saw” 是简单过去时,但这里需要表示在“我看照片之前”已经发生的动作,因此使用过去完成时”‘d seen” (had seen)。

    答案: ‘d seen

    翻译: 我看着照片,突然意识到我以前在某个地方见过那个人。

  3. First I ___ the salad, then I toasted the bread.

    • made
    • ‘d made

    解释: “made” 是简单过去时,用来描述一系列动作时,先后顺序很重要。这里不需要过去完成时。

    答案: made

    翻译: 我先做了沙拉,然后烤了面包。

  4. ___ breakfast when you got up?

    • Did James already cook
    • Had James already cooked

    解释: “Did James already cook” 是简单过去时,而这里需要表示在“你起床之前”已经完成的动作,因此使用过去完成时”Had James already cooked”。

    答案: Had James already cooked

    翻译: 你起床时,詹姆斯已经做好早餐了吗?

  5. She didn’t feel like another coffee as she ___ one.

    • just had
    • ‘d just had

    解释: “just had” 是简单过去时,而这里需要表示在“她不想再喝一杯咖啡之前”已经完成的动作,因此使用过去完成时”‘d just had” (had just had)。

    答案: ‘d just had

    翻译: 她不想再喝一杯咖啡,因为她刚喝过一杯。

  6. We had the French exam this morning. It ___ as hard as I’d expected, though.

    • wasn’t
    • hadn’t been

    解释: “wasn’t” 是简单过去时,而这里需要描述的是一个持续状态,与期待相对比,因此简单过去时“wasn’t”是正确的。

    答案: wasn’t

    翻译: 我们今天上午考了法语。尽管如此,它并没有我预期的那么难。

  7. I asked Sara if she wanted to go for a walk, but she still ___ her homework.

    • didn’t finish
    • hadn’t finished

    解释: “didn’t finish” 是简单过去时,而这里需要表示在“我问她之前”已经未完成的动作,因此使用过去完成时”hadn’t finished”。

    答案: hadn’t finished

    翻译: 我问萨拉是否想去散步,但她还没有完成作业。

  8. Dinosaurs ___ hundreds of millions of years ago.

    • lived
    • had lived

    解释: “lived” 是简单过去时,用于描述远古时期的动作和状态是正确的。过去完成时在这里是不必要的。

    答案: lived

    翻译: 恐龙在数亿年前生活过。


【B1-B2-Grammar】18 Past perfect-过去完成时
http://coderdream.github.io/2024/04/15/b1-b2-grammar-18-past-perfect/
作者
CoderDream
发布于
2024年4月15日
许可协议