The play ____ (be) on for five minutes, and you are a little late. ❌
answer
had been ❌
has been ✅
关键语法点:现在完成时与过去完成时的核心区别
正确答案:has been
错误原因:混淆了 现在完成时(has been) 与 过去完成时(had been) 的适用场景
深度解析
1. 现在完成时的适用条件
表示 从过去开始并持续到现在的动作(常与 for + 时间段 连用),且 对现在有直接影响。
- 例句:
- The play has been on for five minutes.(戏剧已开演5分钟 → 现在仍在进行)
- ❌ The play had been on for five minutes...(错误,缺少过去时间基点)
本题中,后半句 "you are a little late" 使用现在时态,表明 整个句子的时间基点是现在。因此,前半句必须用 现在完成时(has been) 表示动作从过去持续到当前。
- 例句:
2. 过去完成时的限制
过去完成时(had been)要求存在 明确的过去时间基点(如 "when I arrived"),表示 动作在该基点前已完成或持续。
- 例句:
- When I arrived at the theatre, the play had been on for five minutes.(我到剧院时,戏剧已开演5分钟 → 以 "arrived" 为基点)
- ❌ The play had been on for five minutes, and you are a little late.(错误,无过去基点与现在时态矛盾)
本题中,句子未提供过去时间基点,且后半句是现在时态,若用 had been 会导致 时态逻辑矛盾(过去动作与现在状态无法衔接)。
- 例句:
3. 关键对比
| 时态 | 适用场景 | 例句 |
|---|---|---|
| 现在完成时 | 动作从过去持续到现在,且与现在相关 | The play has been on (now you can still watch it). |
| 过去完成时 | 动作在过去某一时间点前已完成或持续 | The play had been on (before the audience arrived). |
自测练习
- The concert ____ (start) when we entered the hall.
答案
答案:had started(以 "entered" 为过去基点)
- She ____ (work) here since 2020, and she loves her job.
答案
答案:has worked(从过去持续到现在)
- By the time he woke up, the sun ____ (rise).
答案
答案:had risen(以 "woke up" 为过去基点)
