39. The HR manager from our Boston branch has just arrived though I didn’t know he ________ until yesterday.
(A) comes
(B) will come
(C) was coming
(D) had been coming
統計: A(55), B(174), C(363), D(315), E(0) #3435994
詳解 (共 6 筆)
AI詳解:ChatGPT
1. 主句時態:
• “has just arrived” → 現在完成式,表示剛剛發生。
2. 從句時態 (I didn’t know … until yesterday)
• “didn’t know” 在過去 → 從句應該用 過去的未來/進行時來表達「當時不知道,他原本要來」。
3. 看選項:
• (A) comes → 現在式,不合時態。
• (B) will come → “didn’t know … he will come” 語法不自然,因為過去語境中通常不用 will。
• (C) was coming ✅ → 正確,用過去進行表達「當時他計畫/正在要來」。
• (D) had been coming → 表示「已經持續在來」,語義不符。
這題的正確答案是 (C) was coming。
文法解說:
這題考的是「過去的未來式」(Future in the Past),也牽涉到時態的一致性(Sequence of Tenses)。
-
主要時態:
句子的關鍵動詞是 I didn’t know...,這是一個過去式。這表示整個子句的敘述時間點是在過去。 -
過去的未來式:
當我們在過去的時間點,要描述一個「當時的未來」計畫或事件時,我們需要把表示未來的時態往後推一個時態。-
will -> would
-
is going to -> was going to
-
is V-ing (用現在進行式表示未來計畫) -> was V-ing (用過去進行式表示過去的未來計畫)
-
-
句子分析:
-
I didn’t know... until yesterday. (直到昨天我才知道...) -> 敘述的時間點在過去。
-
空格中要填入的事件是「他要來」這件事。這件事在「我不知道」的那個過去時間點來看,是一個未來的計畫。
-
因此,我們需要使用「過去的未來式」。
-
選項分析:
-
(A) comes: 現在式。時態不一致,因為主要動詞 didn't know 是過去式。
-
(B) will come: 未來式。這是在「現在」的時間點預測未來,但句子的時間點是「過去」。
-
(C) was coming: 過去進行式。在這裡用來表示一個在過去就已經安排好的、相對於過去時間點的「未來計畫」。這完全符合「過去的未來式」的用法。意思就是:「直到昨天,我都不知道他(當時)正要來。」
-
(D) had been coming: 過去完成進行式。這表示一個動作在過去某個時間點之前就已經開始並持續進行。這與句意不符,因為「他要來」是一個單一的、已安排好的事件,而不是一個持續的動作。
結論:
由於主要子句是過去式 didn't know,其後面的名詞子句中描述的「未來計畫」需要使用相應的過去時態,即 was coming。
整句話的意思是:「雖然我們波士頓分公司的人力資源經理剛到,但我直到昨天才知道他要來。」
正確答案:C. was coming ✅
原句拆解
The HR manager … has just arrived though I didn’t know he ________ until yesterday.
重點有三個時間層:
1️⃣ 現在:has just arrived(剛到)
2️⃣ 過去某段時間以前:我不知道
3️⃣ 昨天:我才知道這件事
? 空格要填的是:
「在我不知道的那段時間裡,他其實已經『計畫要來』」
為什麼選 was coming(過去進行式)?
? 過去進行式 =「當時已安排、已在進行中的未來計畫」
-
was coming
→ 在過去某個時間點,「來訪這件事已經是確定行程」
? 常見搭配:
-
was coming
-
was leaving
-
was meeting
? 表示「過去就排好的未來行程」
所以整句意思是:
他剛到,但直到昨天我才知道
原來他早就有計畫要來
完全合理 ✔
為什麼 D. had been coming 是錯的?❌
你會選 D 很正常,但台電不要這個。
had been coming = 過去完成進行式
用途是:
-
強調 動作持續了一段時間
-
通常會接 for / since / 一段時間
例:
-
He had been waiting for two hours.
❌ 本題沒有「持續多久」
❌「來訪」也不是一個會「持續進行」的動作
→ 用完成進行式 語意不自然
為什麼 A、B 也錯?快速帶過
(A) comes
-
現在式 ❌(時間對不上)
(B) will come
-
未來式 ❌
-
yesterday 之前不會用 will
考試一秒判斷法(超重要)
? 關鍵句型
didn’t know … until yesterday
? 空格通常要用:
-
過去式 / 過去進行式
-
而不是完成式
再加一個判斷:
-
是「事實」?→ 過去式
-
是「早已安排的行程」?→ was / were + V-ing
最後幫你定錨一句話
? 國營英文看到「早就排好的行程」= was / were coming
你這題錯得很有水準,不是亂猜型錯誤 ?
如果你要,我可以幫你整理
「until yesterday 必考時態清單(國營/台電專用)」
答案是(C)was coming
I didn’t know he ________ until yesterday.
說話時間 = 現在
-
「has just arrived」= 現在完成式 → 他剛剛到
-
「didn’t know … until yesterday」= 過去式 → 昨天之前我都不知道
在「昨天」那個時間點,
「他要來」這件事其實是一個已排好的計畫 / 預定行程。
英文裡,「已安排好的未來計畫」常用現在進行式來表達:
-
He is coming tomorrow.
-
She is flying to Japan next week.
但這一句是放在「過去」的語境裡(didn’t know),
所以現在進行 is coming 就要一起往後推一格變成:
was coming(過去式的進行 → 表示當時已安排好的未來)
? I didn’t know he was coming
= 我之前不知道「他要來(這個已規劃好的行程)」。