✔ 最佳答案
因為這句子是屬於過去完成式,表示過去某一時刻前已完成的動作。(had+過去分詞)
假設現在是星期一....
(1)
簡單過去式:They drove to the beach on the weekend.
講述了“週末時他們開車到海邊”這個事實,而這個事實是發生在過去(昨天)的。
(2)
過去完成式:They had driven to the beach the weekend before.
"the weekend before"指的是“(已過去了的)這週末”的“上一週”,所以是“過去的過去”,是在“過去前某一時刻已完成的事”,他們在這週末(昨天)前已去過海灘了。
從以上例子可以看出,如果(1)變成簡單現在式或未來簡單式,那麼(2)就會變成現在完成式,所以在沒有提供上文的情況下,選項(b)也是絕對可以成立的。- They (will) drive to the beach this weekend.
- They have driven to the beach the weekend before.
(3)
過去簡單式:They drove to the beach the weekend before.
現在依然是星期一,那麼"the weekend before"指的是上上個週末,如果我想講述“我上上週末開車到海邊”,那麼我就會說"I drove to the beach the weekend before (this one)". 所以選項(a)也理應正確。
(4)
未來完成式:They will have driven to the beach the weekend before. (不成立)
因為未來完成式指的是“未來某一時刻前已完成的動作”,而句中"before"已表達了事情是發生在過去的,與"will"一次有衝突。
但如果句子改成“過去的未來完成式” - They would have driven to the beach the weekend before - 這樣則是可以成立的。
“過去的未來完成式”指的是“以過去的某個時間點來說,可以在未來完成的事”。
簡單點來說,如果假設時間是一條線,那麼就可以這樣表示:
........(A)過去........(B)現在........(C)未來........
選項(a) 簡單過去式:發生在A點的事
選項(b) 現在完成式:發生在B點與B點之前的事(其中包括A點)
選項(c) 過去完成式:發生在A點與A點之前的事
選項(d) 過去完成式:發生在B點與C點之間的事,不包括B點。
而"the weekend before"是發生在B點之前的事,所以選項(d)不成立,其餘選項都可成立。
2011-11-09 06:53:37 補充:
過去的未來完成式:發生在A點與B點之間的事。
2011-11-09 06:54:52 補充:
選項(d)應該是未來完成式。
2011-11-09 07:36:56 補充:
“過去的未來完成式”不知道正不正確,因為是我自己起的,英文是"Conditional Simple type II",句型是"I would have done it",是表示在過去有可能已完成的事。
I would have done the homework yesterday, which means I had not done it yet, but I have done it now - 我可以在昨天就把功課做完了,也就是說我昨天還沒有做完,但我今天做完了。
2011-11-09 07:45:14 補充:
另外有關你的答案為何是(c),我覺得是因為出題的人將"the weekend before"設在了A點之前,在這種情形下,只有(c)描述了發生在A點之前的事。但過去完成式是不可以單獨存在的,它一定要已某件已過去的事作為前提。如果你的問題是有上文描述過某件已過去的事,而這題又是based on那件事上的,那麼這題答案的選項就應該是(c)沒錯;但如果並沒有上文供參考,那麼就是出題的人犯了錯。