威威老師的文法特快車:進階時式 (Advanced Tenses)
課程導航
哈囉各位同學!我是威威老師。
來,比較這三句:
- “I lived here in 2020.”
- “I have lived here since 2020.”
- “I had lived here before I moved to Tokyo.”
中文翻譯都很像,但英文意思天差地遠:
- 過去簡單:2020 那年住在這(現在可能不住了)
- 現在完成:從 2020 一直住到現在(還在住)
- 過去完成:搬去東京前住過這(過去的過去)
英文有 12 種時態——精確區分「什麼時候做」「做了多久」「做完了沒」。學測閱讀和寫作裡,你每一句都會用到時態——選錯就整題錯。
今天威威老師帶你拆解 4 個進階時態:現在完成式、過去完成式、未來完成式、完成進行式——這是 03 時式入門 的延伸。
繫好安全帶 🚂
課前快問 (Pre-Quiz) — 複習 18 假設語氣
- If I ____ rich, I would travel.(am / was / were)
- The teacher demanded that every student ____ on time.(arrives / arrive / will arrive)
- ____ I known the truth, I would have told you.(If / Had / Were)
解答
- were — Type 2,were 不分人稱。
- arrive — demand + that + 原形(不加 s)。
- Had — 倒裝假設 Type 3。
一、12 種時態完整地圖
英文時態 = 3 個時間 × 4 個體 = 12 種!
| 簡單 (Simple) | 進行 (Progressive) | 完成 (Perfect) | 完成進行 (Perfect Prog.) | |
|---|---|---|---|---|
| 現在 | V / V-s | am/is/are + V-ing | have/has + V-pp | have/has been + V-ing |
| 過去 | V-ed | was/were + V-ing | had + V-pp | had been + V-ing |
| 未來 | will + VR | will be + V-ing | will have + V-pp | will have been + V-ing |
💡 本章重點:粗體部分(完成式 + 完成進行式)——是 03 時式入門 沒講的進階區!
二、現在完成式 (Present Perfect) — have/has + V-pp
2-1 三大用法
| 用法 | 意思 | 例句 |
|---|---|---|
| 經驗 | 「曾經…」 | I have visited Japan three times. |
| 完成 | 「已經…」 | She has finished her homework. |
| 繼續 | 「從過去到現在一直…」 | He has lived here since 2010. |
2-2 關鍵搭配詞
| 搭配 | 用法 | 例句 |
|---|---|---|
| since + 時間點 | 從…開始 | since 2020, since Monday |
| for + 一段時間 | 持續多久 | for 5 years, for two days |
| already | 已經(肯定) | She has already left. |
| yet | 還沒(否定/疑問) | Have you finished yet? |
| just | 剛剛 | I have just eaten. |
| ever | 曾經(疑問) | Have you ever been to Paris? |
| never | 從未 | I have never seen that. |
2-3 ⚠️ have been to vs. have gone to
| 片語 | 意思 | 說話者位置 |
|---|---|---|
| have been to | 曾經去過(已回來) | 不在那裡 |
| have gone to | 已經去了(還沒回來) | 在那裡或途中 |
例:
- I have been to Japan three times.(去過,已回來)
- He has gone to Japan.(去了,還沒回來)
2-4 現在完成 vs. 過去簡單
| 過去簡單 | 現在完成 | |
|---|---|---|
| 時間 | 過去某明確時間 | 不強調明確時間 |
| 與現在關係 | 無關 | 有關(持續到現在) |
| 常搭配 | yesterday, last week, in 2020 | since, for, already, yet, ever |
| 例句 | I lost my key yesterday. | I have lost my key.(現在找不到) |
💡 判斷口訣:「明確過去時間 → 過去簡單;與現在有關 → 現在完成」
🎯 現在完成式即時練習(5 題)
1. Choose: I have lived here ______ 2018. (A) for (B) since (C) from (D) in
2. Choose: He ______ to Japan three times.(去過,已回來) (A) has been (B) has gone (C) went (D) had been
3. Choose: I ______ my keys. I can’t find them anywhere! (A) lost (B) have lost (C) had lost (D) was losing
4. Choose: Have you finished your homework ______? (A) already (B) yet (C) just (D) since
5. 改錯:I have seen that movie last weekend.
寫好答案再往下看 👇
解答與詳解
第 1 題:(B) since
2018 是時間點 → since。
第 2 題:(A) has been
「去過」(已回來)→ have been to。
第 3 題:(B) have lost
「現在找不到」→ 與現在有關 → 現在完成。
第 4 題:(B) yet
疑問句句尾 → yet。
第 5 題:have seen → saw
✅ 修正:I saw that movie last weekend. 解析:last weekend 是明確過去時間 → 用過去簡單。
三、過去完成式 (Past Perfect) — had + V-pp
3-1 核心觀念:「過去的過去」
時間軸:
─────────────────────────→
had left arrived 現在
↑ ↑
過去的過去 過去基準點
💡 必有兩個過去事件比較先後——更早的用 had + V-pp,較晚的用過去簡單。
3-2 黃金例句
| 例句 | 中文 |
|---|---|
| By the time I arrived, he had left. | 我到的時候,他已經走了。 |
| She had finished dinner before I called her. | 我打電話前她已經吃完晚餐。 |
| When I woke up, the sun had risen. | 我醒來時太陽已升起。 |
3-3 常見搭配
| 搭配 | 例句 |
|---|---|
| by the time + 過去式 | By the time we got there, the movie had started. |
| before + 過去式 | I had known before the teacher told us. |
| after + 過去式 | After she had finished, she went out. |
🚨 沒有兩個過去事件比較 → 不要用過去完成! 只有一個過去事件就用過去簡單即可。
🎯 過去完成式即時練習(5 題)
1. Choose: By the time we arrived at the theater, the movie ______. (A) started (B) has started (C) had started (D) starts
2. Choose: Before I moved to Taipei, I ______ in Kaohsiung for 5 years. (A) lived (B) have lived (C) had lived (D) was living
3. Translate: 「我到達車站時,火車已經離開了。」(Use past perfect + past simple)
4. 改錯:When I arrived, he had eat his dinner.
5. Choose: I ______ never ______ sushi before last night. (A) have/tried (B) had/tried (C) was/trying (D) will/try
寫好答案再往下看 👇
解答與詳解
第 1 題:(C) had started
「電影開始」(更早)+「我們到達」(較晚)→ had + V-pp。
第 2 題:(C) had lived
「住高雄」(更早)+「搬台北」(較晚)→ had lived。
第 3 題:When I arrived at the station, the train had left.
第 4 題:had eat → had eaten
✅ 修正:When I arrived, he had eaten his dinner.(had + V-pp,eat 的 V-pp 是 eaten)。
第 5 題:(B) had/tried
「昨晚之前」是過去基準 + 「從未試過」更早的狀態 → had never tried。
四、未來完成式 (Future Perfect) — will have + V-pp
4-1 核心:「到未來某時點為止已完成」
| 例句 | 中文 |
|---|---|
| By 2030, I will have graduated. | 到 2030 年,我將已經畢業。 |
| By next month, she will have worked here for 10 years. | 到下個月,她在這裡工作將滿 10 年。 |
4-2 信號詞
| 搭配 | 例句 |
|---|---|
| by + 未來時間 | By 2050, robots will have replaced many jobs. |
| by the time + 現在式 | By the time you arrive, I will have finished cooking. |
| by the end of + 未來時間 | By the end of this year, we will have sold 1,000 units. |
🎯 威威口訣:「by + 未來時間 → 未來完成式」
🎯 未來完成式即時練習(5 題)
1. Choose: By next December, I ______ from university. (A) will graduate (B) will have graduated (C) graduated (D) have graduated
2. Choose: By the time you get home, I ______ dinner. (A) will cook (B) will have cooked (C) cooked (D) have cooked
3. Translate: 「到 2030 年,我將已經學英文 20 年。」(Use will have + V-pp)
4. Choose: By 2050, scientists ______ a cure for many diseases. (A) will find (B) will have found (C) found (D) have found
5. 改錯:By the end of this year, we will sell 1,000 units.(強調「到那時將已賣出」)
寫好答案再往下看 👇
解答與詳解
第 1 題:(B) will have graduated
by next December + 完成意義 → will have + V-pp。
第 2 題:(B) will have cooked
by the time you get home → will have + V-pp。
第 3 題:By 2030, I will have studied English for 20 years.
第 4 題:(B) will have found
by 2050 → 未來完成。
第 5 題:will sell → will have sold
✅ 修正:By the end of this year, we will have sold 1,000 units.
五、完成進行式 (Perfect Progressive)
強調「持續進行到某時點」+「還在繼續」。
5-1 現在完成進行式:have/has been + V-ing
從過去開始,一直持續到現在,可能還會繼續。
| 例句 | 中文 |
|---|---|
| I have been waiting for two hours. | 我已經等了兩個小時。 |
| She has been studying since morning. | 她從早上就一直在讀書。 |
| They have been working for months. | 他們已經工作好幾個月了。 |
5-2 過去完成進行式:had been + V-ing
在過去某時點之前,一直持續進行的動作。
| 例句 | 中文 |
|---|---|
| He had been working for 10 hours before he took a break. | 他工作 10 小時才終於休息。 |
| She had been living in London for 3 years before she moved. | 搬走前她在倫敦住了 3 年。 |
5-3 完成式 vs. 完成進行式
| 完成式 | 完成進行式 | |
|---|---|---|
| 重點 | 結果(完成多少?) | 過程(做多久?) |
| 例句 | I have painted the room. | I have been painting the room. |
| 意思 | 漆完了(結果) | 一直在漆(過程) |
💎 「has 強調做完,has been 強調做了多久還在做」
🎯 完成進行式即時練習(5 題)
1. Choose: I have been ______ for him for two hours! (A) waiting (B) wait (C) waited (D) been waiting
2. Choose: She ______ for three hours before she finally took a break. (A) has been studying (B) had been studying (C) is studying (D) was studying
3. Choose: She ______ the room all morning, but she hasn’t finished yet. (A) has painted (B) has been painting (C) painted (D) had painted
4. Choose: He ______ English since he was six years old. (A) learns (B) has been learning (C) is learning (D) learned
5. Translate: 「他一直在等公車 30 分鐘,公車終於來了。」(Use 過去完成進行式)
寫好答案再往下看 👇
解答與詳解
第 1 題:(A) waiting
have been + V-ing → waiting。
第 2 題:(B) had been studying
「過去某時點之前一直在做」→ had been + V-ing。
第 3 題:(B) has been painting
「整個早上一直在漆」+「還沒漆完」→ 持續進行 + 未完成 → 完成進行式。
第 4 題:(B) has been learning
since he was six → 從過去到現在持續學習。
第 5 題:He had been waiting for the bus for 30 minutes when it finally arrived.
六、時態一致性 (Sequence of Tenses)
主要子句是過去式時,從屬子句的時態要「後退」。
6-1 後退規則
| 主要子句(過去) | 從屬子句(後退) |
|---|---|
| He said he ___ tired. | was tired(不是 is) |
| He said he ___ finished. | had finished(不是 finished) |
| He said he ___ come. | would come(will → would) |
| She said she ___ help. | could help(can → could) |
6-2 範例
- He told me that he was a doctor.(is → was)
- She said she had already eaten lunch.(had eaten = 之前就吃過了)
- They asked where I was going.(is going → was going)
6-3 ⚠️ 例外:普遍真理不變!
| 例句 | 解析 |
|---|---|
| He said the earth is round. ✓ | 永恆真理 → 不後退 |
| The teacher explained that water boils at 100°. ✓ | 科學事實 → 不後退 |
| She told us that 2 plus 2 equals 4. ✓ | 數學真理 → 不後退 |
💡 判斷標準:「以前真、現在真、以後也真」→ 不後退!
🎯 時態一致性即時練習(5 題)
1. Choose: He said he ______ the book the day before. (A) reads (B) read (C) had read (D) has read
2. Choose: She told me that she ______ to Paris the following summer. (A) will go (B) would go (C) has gone (D) went
3. Choose: The teacher explained that water ______ at 100°C. (A) boiled (B) boils (C) has boiled (D) had boiled
4. Choose: She said that she ______ her keys and couldn’t get in. (A) loses (B) has lost (C) had lost (D) lost
5. 改錯:He told me he is hungry yesterday.
寫好答案再往下看 👇
解答與詳解
第 1 題:(C) had read
said(過去)+ the day before(更早)→ had read。
第 2 題:(B) would go
told(過去)+ will → would。
第 3 題:(B) boils
普遍真理!不後退。
第 4 題:(C) had lost
said(過去)+ 弄丟(更早)→ had lost。
第 5 題:is → was
✅ 修正:He told me he was hungry yesterday.(時態後退)
七、考試陷阱大整理
學測時態考題的 6 大陷阱
陷阱 1:since vs. for
since + 時間點;for + 一段時間。
陷阱 2:have been to vs. have gone to
been to = 去過(已回來);gone to = 去了(還沒回來)。
陷阱 3:明確過去時間 → 過去簡單
看到 yesterday/last week/in 2020 → 過去簡單,不要用現在完成!
陷阱 4:過去完成式必有兩個過去事件
只有一個過去事件 → 過去簡單即可。
陷阱 5:by + 未來時間 → 未來完成
看到 by tomorrow/by 2030 → will have + V-pp。
陷阱 6:時態一致性 — 主子句過去 → 從屬後退
例外:普遍真理不後退!
章末總測驗 (Chapter Test) — 30 題
🟢 基礎題 (1-10)
1. I have lived in this city ______ 2018. (A) for (B) since (C) from (D) in
2. By the time we arrived at the theater, the movie ______. (A) started (B) has started (C) had started (D) starts
3. She has ______ finished her project. She’s relaxing now. (A) yet (B) already (C) never (D) since
4. He ______ to Japan three times.(去過) (A) has been (B) has gone (C) went (D) had been
5. By next December, I ______ from university. (A) will graduate (B) will have graduated (C) graduated (D) have graduated
6. I ______ my keys. I can’t find them anywhere! (A) lost (B) have lost (C) had lost (D) was losing
7. She ______ for three hours before she finally took a break. (A) has been studying (B) had been studying (C) is studying (D) was studying
8. He said he ______ the book the day before. (A) reads (B) read (C) had read (D) has read
9. Have you finished your homework ______? (A) already (B) yet (C) just (D) since
10. I ______ never ______ sushi before last night. (A) have/tried (B) had/tried (C) was/trying (D) will/try
🟡 進階題 (11-20)
11. The teacher explained that water ______ at 100 degrees Celsius. (A) boiled (B) boils (C) has boiled (D) had boiled
12. My brother ______ in this company for 10 years. (A) works (B) has worked (C) is working (D) worked
13. She told me that she ______ to Paris the following summer. (A) will go (B) would go (C) has gone (D) went
14. By the time you get home, I ______ dinner. (A) will cook (B) will have cooked (C) cooked (D) have cooked
15. I have been waiting for him ______ two hours! (A) since (B) for (C) from (D) already
16. “Where is Tom?” “He ______ to the library.”(不在這) (A) has been (B) has gone (C) went (D) had gone
17. Before I moved to Taipei, I ______ in Kaohsiung for 5 years. (A) lived (B) have lived (C) had lived (D) was living
18. She ______ the room all morning, but she hasn’t finished yet. (A) has painted (B) has been painting (C) painted (D) had painted
19. I ______ that movie last weekend. (A) have seen (B) saw (C) had seen (D) was seeing
20. He ______ English since he was six years old. (A) learns (B) has been learning (C) is learning (D) learned
🔴 挑戰題 (21-30)
21. By 2050, scientists ______ a cure for many diseases. (A) will find (B) will have found (C) found (D) have found
22. She said that she ______ her keys and couldn’t get in. (A) loses (B) has lost (C) had lost (D) lost
23. I have ______ seen such a beautiful sunset! (A) never (B) yet (C) for (D) since
24. He ______ for the bus for 30 minutes when it finally arrived. (A) has been waiting (B) had been waiting (C) is waiting (D) waited
25. By the end of this year, we ______ 100 books. (A) will read (B) will have read (C) have read (D) read
26. Translate three sentences: (a) 「我從去年開始學日文。」(Use have been + V-ing + since) (b) 「我們到的時候電影已經開始了。」(Use past perfect) (c) 「到明年,我將已經住在這裡 10 年。」(Use future perfect)
27. Find errors: (a) “I have seen that movie yesterday.” (b) “He told me he is a doctor when he was young.” (c) “I have been to the library now to return books.”(這句的時態邏輯錯了) (d) “By 2030, I will graduate from college.”(強調「已經畢業」)
28. Distinguish: (a) “I have lived here for 5 years.” vs. “I lived here for 5 years.” (b) “He has been to Japan.” vs. “He has gone to Japan.”
29. Translate: (a) 「她已經寫了三封信,但還在繼續寫。」(Use has been + V-ing) (b) 「我搬家之前已經住在這裡 10 年了。」(Use past perfect + before) (c) 「老師說太陽從東邊升起。」(Use 例外:普遍真理)
30. Terminal challenge—rewrite fixing all errors: “I have lived here since five years. Yesterday, I have met my old friend who I haven’t seen for years. He told me he is busy with his new job. By the time I will arrive home, my mom will already cook dinner. I will be lucky if I will catch the early bus tomorrow.”
章末總測驗 解答與詳解
🟢 基礎題 解答
第 1 題:(B) since — 2018 是時間點。
第 2 題:(C) had started — 過去的過去。
第 3 題:(B) already — 肯定句 + 已完成。
第 4 題:(A) has been — 去過已回來。
第 5 題:(B) will have graduated — by + 未來時間。
第 6 題:(B) have lost — 與現在有關(找不到)。
第 7 題:(B) had been studying — 過去完成進行。
第 8 題:(C) had read — 時態一致 + 過去的過去。
第 9 題:(B) yet — 疑問句。
第 10 題:(B) had/tried — 過去完成(never + had + V-pp)。
🟡 進階題 解答
第 11 題:(B) boils — 普遍真理不後退。
第 12 題:(B) has worked — for 10 years 持續到現在。
第 13 題:(B) would go — 時態後退 will → would。
第 14 題:(B) will have cooked — by the time + 未來完成。
第 15 題:(B) for — two hours 一段時間。
第 16 題:(B) has gone — 不在這裡 → gone to。
第 17 題:(C) had lived — before + 過去式 → had lived 更早的事。
第 18 題:(B) has been painting — 持續+未完成 → 完成進行。
第 19 題:(B) saw — last weekend 明確過去時間。
第 20 題:(B) has been learning — since 過去到現在。
🔴 挑戰題 解答
第 21 題:(B) will have found
第 22 題:(C) had lost
第 23 題:(A) never
第 24 題:(B) had been waiting
第 25 題:(B) will have read
第 26 題:翻譯
(a) I have been studying Japanese since last year. (b) By the time we arrived, the movie had started. (c) By next year, I will have lived here for 10 years.
第 27 題:找錯
(a) have seen → saw(yesterday 明確過去) (b) is → was(時態一致) (c) now → just 或刪除(“have been to + now” 邏輯不通——應該說 I have just been to the library) (d) will graduate → will have graduated(強調已完成)
第 28 題:意思區辨
(a) “have lived” = 從 5 年前住到現在(還在住);“lived” = 過去某時住了 5 年(現在不住了)。 (b) “has been to Japan” = 去過已回來;“has gone to Japan” = 去了還沒回來。
第 29 題:翻譯
(a) She has written three letters and is still writing.(已完成三封 + 還在寫第四封——用現在完成式 has written 表完成的數量;用 is still writing 表持續動作) 💎 也可說 She has already written three letters and is still writing more.(更清楚)。注意:has been writing three letters 在語意上稍嫌模糊,因為「been V-ing」強調過程持續,但「three」這個明確數字暗示完成——所以用 has written 較自然。 (b) I had lived here for 10 years before I moved. (c) The teacher said that the sun rises in the east.(普遍真理,不後退)
第 30 題:完整修正
原段:I have lived here since five years. Yesterday, I have met my old friend who I haven’t seen for years. He told me he is busy. By the time I will arrive home, my mom will already cook dinner. I will be lucky if I will catch the early bus tomorrow.
✅ 修正版: “I have lived here for five years. Yesterday, I met my old friend who I hadn’t seen for years. He told me he was busy with his new job. By the time I arrive home, my mom will already have cooked dinner. I will be lucky if I catch the early bus tomorrow.”
修正了 6 處:
- since five years → for five years(一段時間用 for)
- have met → met(yesterday 明確過去)
- 也可加 haven’t → hadn’t seen(時間參考點是過去 met)
- is → was(時態一致)
- will arrive → arrive(by the time 後接現在式表未來)
- will already cook → will already have cooked(未來完成)
- if I will catch → if I catch(if 子句不能用 will)
課前快問 解答
詳見前面解答區。
自我評分
| 分數(30 題) | 等級 | 建議 |
|---|---|---|
| 27-30 | 🏆 威威等級 | 進階時式精通!進入 20 助動詞詳解。 |
| 22-26 | 🥈 穩健等級 | 重點複習:since/for、been to/gone to、過去完成。 |
| 16-21 | 🥉 加油等級 | 把「12 種時態地圖」+「6 大陷阱」背熟。 |
| 0-15 | 💪 再出發 | 從現在完成式 vs. 過去簡單式對比開始。 |
複習計畫
時間 內容 今天 全文 + 即時練習 + 章末測驗 第 3 天 默寫 12 種時態表格 第 7 天 寫 5 句個人經驗(用現在完成式各種用法) 第 14 天 找 1 篇英文新聞,圈所有時態並判斷 考試前 重看「6 大陷阱」 + 12 種時態地圖
學習科學小知識:精緻化編碼
給每個時態一個生活化的比喻,記憶從「死背」升級為「內化」:
- 過去完成 = 「馬後炮」(已經發生)
- 現在完成 = 「履歷表」(過去到現在的經驗)
- 未來完成 = 「截止日期」(到那時將完成)
- 完成進行 = 「馬拉松中」(一直跑,還在繼續)
把抽象的時態概念變成生動的畫面——記憶就永遠忘不掉。