A desert area that has been without water for six years will still bloom when rain will come.
(TOEFL)
书上给的答案是D。但我不知道will come错在何处。
英语语法里有一条规则必须记牢:在时间状语从句和条件状语从句里,必须用一般现在时来代替一般将来时。例如:
-
I'll give him these letters when I see him. 当我看到他时,我将把这些信给他。
-
I shall tell him if he comes. 如果他来,我会告诉他的。
[参见 when , before(conj.)]
请做下面的英语试题:
—When will you come to see me, Dad? —I will go to see you when you ____ the training course.
A. will have finished B. will finish C. are finishing D. finish(北京高考,03 春 - 26) when
下面是钱歌川先生《英文疑难详解》的一则问答(p.75):
“‘他没有告诉我他什么时候回来’。译成英文 He has not told me when he will be back. 为什么不对,请说明 when 的用法。
解答:这句英文的错误,关键在 when 一字,因为作‘疑问副词’用的 when 是不能与 perfect tense 连用的,我们不能说 When have you come back? 只能说 When did you come back? 同样的理由,质问中的句子,应作:He didn't tell me when he would be back. 才对。这是完全指的过去,与现在无关,所以不能用现在完成时态,因为这种时态是与现在有关系的。”
我一直不能理解,为什么 He has not told me when he will be back. 这个句子是错误的。
当 when 用作疑问副词,充当句子状语时,它是不能与现在完成时连用的。请看下面的实例:
-
When did she arrive? (CGEL) 她是什么时候到达的?
-
When will you be promoted? 你什么时候将被提升?
然而,在 He has not told me when he will be back. 这个句子里,when 并不作主句谓语动词 (has told) 的状语,而是引导一个宾语从句 (when 在宾语从句里作状语),因此,它对主句谓语动词时态的使用不应产生任何影响,可见《英文疑难详解》用不能说 When have you come back? 来证明不能说 He has not told me when he will be back. 显然是犯了逻辑错误。我们认为,钱歌川先生所说的典型错句是完全正确的句子。请看下面的实例:
-
We have told them when we shall be there. (BBC) 我们已告诉他们我们将在什么时候到达那里。
-
Has he told you when he is to leave for Kunming? 他告没告诉你他什么时候动身去昆明?(张道真《实用英语语法》,1995,p.189)
-
We have informed them when we shall arrive. (BBC) 我们已通知他们我们将在什么时候到达。