【B1-B2-Grammar】20 Present perfect-现在完成时

【B1-B2-Grammar】20 Present perfect-现在完成时

Do you know how to use phrases like She’s called every day this week, I’ve broken my leg and Have you ever been to Scotland? Test what you know with interactive exercises and read the explanation to help you. 你知道如何使用“本周她每天都打电话来”、“我摔断了腿”和“你去过苏格兰吗”这样的短语? 通过互动练习测试您所掌握的知识,并阅读说明来帮助您。

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

He’s been to ten different countries. 他去过十个不同的国家。
I haven’t seen her today. 我今天还没见到她。
My phone’s run out of battery. Can I use yours? 我的手机没电了。我可以用你的吗?
Have you ever dyed your hair a different colour? 你曾经把头发染成不同的颜色吗?

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

Grammar test 1-语法测试1

Present perfect: 1

Choose the correct option to complete the sentence.

  • Question
  1. That’s the worst film I ___ in my life!
    saw
    ‘ve seen
  2. She must be really tired. She ___ late every night this week.
    works
    ‘s worked
  3. You’ve got a new car? How long ___ the old one?
    did you have
    have you had
  4. Oh dear, it looks like Jan ___ the shopping yesterday. I’ll go now.
    didn’t do
    hasn’t done
  5. They ___ the documents I sent them! Now I have to send them all again.
    lose
    ‘ve lost
  6. She ___ to swim on holiday in 1995.
    learned
    ‘s learned
  7. I think you’re my oldest friend! How long ___ each other?
    do we know
    have we known
  8. I ___ a chance to call him back yet.
    don’t have
    haven’t had
  • Answer
  1. That’s the worst film I ___ in my life!
    saw
    ✔’ve seen
  2. She must be really tired. She ___ late every night this week.
    works
    ✔’s worked
  3. You’ve got a new car? How long ___ the old one?
    ✔did you have
    have you had
  4. Oh dear, it looks like Jan ___ the shopping yesterday. I’ll go now.
    didn’t do
    ✔hasn’t done
  5. They ___ the documents I sent them! Now I have to send them all again.
    lose
    ✔’ve lost
  6. She ___ to swim on holiday in 1995.
    ✔learned
    ‘s learned
  7. I think you’re my oldest friend! How long ___ each other?
    do we know
    ✔have we known
  8. I ___ a chance to call him back yet.
    don’t have
    ✔haven’t had

填空题及翻译

  1. That’s the worst film I ___ in my life!

    • saw
    • ‘ve seen

    解释: “saw” 是简单过去时,但句子中使用了“in my life”,表示经历到现在的状态,因此使用现在完成时 “‘ve seen” (have seen)。

    答案: ‘ve seen

    翻译: 那是我一生中看过的最糟糕的电影!

  2. She must be really tired. She ___ late every night this week.

    • works
    • ‘s worked

    解释: “works” 是一般现在时,但句子中提到了“this week”,表示从过去到现在的状态,应该用现在完成时 “‘s worked” (has worked)。

    答案: ‘s worked

    翻译: 她一定非常累。她这个星期每天都工作到很晚。

  3. You’ve got a new car? How long ___ the old one?

    • did you have
    • have you had

    解释: “did you have” 是简单过去时,但这里需要表示从过去到现在的状态,应该使用现在完成时 “have you had”。

    答案: have you had

    翻译: 你有了新车?你开了多久的旧车?

  4. Oh dear, it looks like Jan ___ the shopping yesterday. I’ll go now.

    • didn’t do
    • hasn’t done

    解释: 这个句子使用了简单过去时,表示在过去某个特定的时间(昨天)Jan没有做购物的动作。

    答案: didn’t do

    翻译: 哎呀,看起来像是简昨天没去购物。我现在去。

  5. They ___ the documents I sent them! Now I have to send them all again.

    • lose
    • ‘ve lost

    解释: “lose” 是简单过去时,但这里需要表示对当前状况的影响,应该用现在完成时 “‘ve lost” (have lost)。

    答案: ‘ve lost

    翻译: 他们弄丢了我给他们的文件!现在我不得不再次发送它们。

  6. She ___ to swim on holiday in 1995.

    • learned
    • ‘s learned

    解释: “She’s learned to swim on holiday in 1995.”中的 “She’s” 是 “She has” 的缩写,表示现在完成时。然而,现在完成时用于描述过去的动作或经历,强调与现在的关联,但在这个句子中,描述的是过去的经历,因此应该使用简单过去时。正确的形式应该是:

    “She learned to swim on holiday in 1995.”。

    答案: learned

    翻译: 她在1995年假期学会了游泳。

  7. I think you’re my oldest friend! How long ___ each other?

    • do we know
    • have we known

    解释: “do we know” 是一般现在时,但句子中使用了“How long”,表示从过去到现在的状态,应该用现在完成时 “have we known”。

    答案: have we known

    翻译: 我认为你是我最老的朋友!我们认识多久了?

  8. I ___ a chance to call him back yet.

    • don’t have
    • haven’t had

    解释: “don’t have” 是一般现在时,但句子中使用了“yet”,表示从过去到现在的状态,应该用现在完成时 “haven’t had”。

    答案: haven’t had

    翻译: 我还没有机会给他打电话。

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

Grammar explanation-语法解释

We use the present perfect simple (have or has + past participle) to talk about past actions or states which are still connected to the present.我们使用现在完成时(have 或 has + 过去分词)来谈论与现在仍然相关的过去的动作或状态。

Unfinished time and states-未完成时间和状态

We often use the present perfect to say what we’ve done in an unfinished time period, such as today, this week, this year, etc., and with expressions such as so far, until now, before, etc. 我们经常使用现在完成时来表达我们在未完成的时间段内所做的事情,例如今天、本周、今年等,并使用到目前为止、直到现在、之前等表达方式。

They‘ve been* on holiday twice this year.* 今年他们已经休假两次了。
We haven’t had a lot of positive feedback so far. 到目前为止,我们还没有得到很多积极的反馈。
I’m sure I‘ve seen* that film before.* 我确定我以前看过那部电影。

We also use it to talk about life experiences, as our life is also an unfinished time period. We often use never in negative sentences and ever in questions. 我们也用它来谈论生活经历,因为我们的生命也是一个未完成的时间段。我们经常在否定句中使用“never”,在疑问句中使用“ever”。

I’ve worked for six different companies. 我曾在六家不同的公司工作过。
He’s never won a gold medal. 他从未获得过金牌。
Have you ever been to Australia? 你去过澳大利亚吗?

We also use the present perfect to talk about unfinished states, especially with for, since and how long. 我们还使用现在完成时来谈论未完成的状态,尤其是 for、since 和 how long。

She’s wanted to be a police officer since she was a child. 她从小就想成为一名警察。
I haven’t known him for very long. 我认识他时间不长。
How long have you had that phone? 你用那部手机多久了?

Finished time and states-完成时间及状态

If we say when something happened, or we feel that that part of our life is finished, we use the past simple. 如果我们说某事发生时,或者我们觉得我们生活的那部分已经结束,我们就用一般过去时。

We visited Russia for the first time in 1992. 1992年我们第一次访问俄罗斯。
I went to three different primary schools. 我去了三所不同的小学。
Before she retired, she worked in several different countries. 退休前,她曾在几个不同的国家工作过。

We also use the past simple for finished states.我们还使用过去简单来表示完成状态。

We knew all our neighbours when we were children. 当我们还是孩子的时候,我们认识所有的邻居。
I didn’t like bananas for a really long time. Now I love them! 我在很长一段时间不喜欢吃香蕉。现在我爱他们!

Past actions with a result in the present-过去的行为导致现在的结果

We can use the present perfect to talk about a past action that has a result in the present. 我们可以使用现在完成时来谈论在现在产生结果的过去行为。

He’s broken his leg so he can’t go on holiday. 他的腿摔断了,所以不能去度假。
There’s been an accident on the main road, so let’s take a different route. 主干道上发生了事故,所以我们走另一条路吧。
They haven’t called me, so I don’t think they need me today. 他们没有给我打电话,所以我认为他们今天不需要我。

Again, if we say when it happened, we use the past simple.同样,如果我们说事情发生的时间,我们使用简单过去时。

He broke his leg last week so he can’t go on holiday. 上周他摔断了腿,所以不能去度假。

However, we often use the present perfect with words like just, recently, already, yet and still.然而,我们经常将现在完成时与“just”、“recently”、“already”、“yet”和“still”等词一起使用。

We’ve recently started going to the gym. 我们最近开始去健身房。
She’s already finished season one and now she’s watching season two. 她已经看完了第一季,现在正在看第二季。
Have you checked your emails yet? 你检查过你的电子邮件了吗?

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

Grammar test 2-语法测试2

Present perfect: 2

Choose the correct option to complete the sentence.

  • Question
  1. I ___ in this flat since I moved here.
    lived
    ‘ve lived
  2. ___ anyone famous when you were in New York?
    Did you see
    Have you seen
  3. It ___ on our holiday so far.
    doesn’t rain
    hasn’t rained
  4. She loves animals, but she ___ a pet.
    never had
    ‘s never had
  5. My laptop ___ working last week so I’m using the computers in the office until it’s fixed.
    stopped
    ‘s stopped
  6. We ___ a great new coffee shop near our flat.
    just discover
    ‘ve just discovered
  7. ___ the heating off? It’s really cold in here.
    Do they turn
    Have they turned
  8. He ___ very happy for a few days last week, but this week he seems OK.
    didn’t seem
    hasn’t seemed
  • Answer
  1. I ___ in this flat since I moved here.
    lived
    ✔’ve lived
  2. ___ anyone famous when you were in New York?
    ✔Did you see
    Have you seen
  3. It ___ on our holiday so far.
    doesn’t rain
    ✔hasn’t rained
  4. She loves animals, but she ___ a pet.
    never had
    ✔’s never had
  5. My laptop ___ working last week so I’m using the computers in the office until it’s fixed.
    ✔stopped
    ‘s stopped
  6. We ___ a great new coffee shop near our flat.
    just discover
    ✔’ve just discovered
  7. ___ the heating off? It’s really cold in here.
    Do they turn
    ✔Have they turned
  8. He ___ very happy for a few days last week, but this week he seems OK.
    ✔didn’t seem
    hasn’t seemed

填空题及翻译

  1. I ___ in this flat since I moved here.

    • lived
    • ‘ve lived

    解释: “lived” 是简单过去时,但句子中使用了“since”,暗示着从过去某一点延续到现在的状态,因此使用现在完成时”‘ve lived” (have lived)。

    答案: ‘ve lived

    翻译: 自从我搬到这里以来,我一直住在这个公寓里。

  2. ___ anyone famous when you were in New York?

    • Did you see
    • Have you seen

    解释: “Did you see” 是简单过去时,而句子中使用了“when you were”, 暗示着与过去的经验相关,所以应该使用现在完成时 “Have you seen”。

    答案: Have you seen

    翻译: 你在纽约的时候见过任何名人吗?

  3. It ___ on our holiday so far.

    • doesn’t rain
    • hasn’t rained

    解释: “doesn’t rain” 表示一般现在时,但句子中提到了“our holiday so far”,表示截止到目前为止,因此应该用现在完成时 “hasn’t rained”。

    答案: hasn’t rained

    翻译: 到目前为止,我们的假期还没有下雨。

  4. She loves animals, but she ___ a pet.

    • never had
    • ‘s never had

    解释: “never had” 是简单过去时,但是在这里表达的是从过去到现在的状态,应该用现在完成时 “‘s never had” (has never had)。

    答案: ‘s never had

    翻译: 她喜欢动物,但她从未养过宠物。

  5. My laptop ___ working last week so I’m using the computers in the office until it’s fixed.

    • stopped
    • ‘s stopped

    解释: “stopped” 是简单过去时,但是在这里表达的是对当前状态的影响,应该用现在完成时 “‘s stopped” (has stopped)。

    答案: ‘s stopped

    翻译: 我的笔记本电脑上周停止工作了,所以我在办公室使用电脑,直到它被修好。

  6. We ___ a great new coffee shop near our flat.

    • just discover
    • ‘ve just discovered

    解释: “just discover” 是简单过去时,但这里强调的是一个与现在相关的经历,应该使用现在完成时 “‘ve just discovered” (have just discovered)。

    答案: ‘ve just discovered

    翻译: 我们刚刚发现了我们公寓附近的一家很棒的新咖啡店。

  7. ___ the heating off? It’s really cold in here.

    • Do they turn
    • Have they turned

    解释: “Do they turn” 是一般现在时,但句子中使用了“it’s really cold”,表示目前的情况,应该使用现在完成时 “Have they turned”。

    答案: Have they turned

    翻译: 他们把暖气关掉了吗?这里真的很冷。

  8. He ___ very happy for a few days last week, but this week he seems OK.

    • didn’t seem
    • hasn’t seemed

    解释: “didn’t seem” 是简单过去时,但句子中提到了“this week”,表示从过去到现在的状态,应该用现在完成时 “hasn’t seemed”。

    答案: hasn’t seemed

    翻译: 上周他几天都非常开心,但这周他似乎还好。


【B1-B2-Grammar】20 Present perfect-现在完成时
http://coderdream.github.io/2024/04/15/b1-b2-grammar-20-present-perfect/
作者
CoderDream
发布于
2024年4月15日
许可协议