【經(jīng)典例題】
1. If my lawyer _______ here last Saturday, he _______ me from going.
A. had been; would have prevented B. had been; would prevent
C. were; would prevent D. were; would have prevented
2. If I had worn my overcoat, I _______cold.
A. won’t have caught B .couldn’t have caught
C. won’t catch D. wouldn’t catch
3.—If he ______ , he ______ that food.
—Luckily he was sent to the hospital immediately.
A. was warned; would not take B. had been warned; would not have taken
C. would be warned; had not taken D. would have been warned; had not taken
4. I didn’t see your sister at the meeting. If she _______, she would have met my brother.
A. has come B. did come C. came D. had come
【答案與解析】
1.A.本題考查虛擬語(yǔ)氣。因?yàn)閺木浔硎九c過去事實(shí)相反的假設(shè),故從句謂語(yǔ)動(dòng)詞用過去完成時(shí),而主句謂語(yǔ)動(dòng)詞用would have +過去分詞形式。
2.B.本題考查虛擬條件句中主句謂語(yǔ)動(dòng)詞的使用。因?yàn)閺木溆昧诉^去完成時(shí),可知主句謂語(yǔ)動(dòng)詞用would / could have +過去分詞形式。根據(jù)句意,可知選B。
3.B. 根據(jù)答語(yǔ),可知本題考查與過去事實(shí)相反的虛擬語(yǔ)氣。故從句謂語(yǔ)動(dòng)詞用過去完成時(shí),而主句謂語(yǔ)動(dòng)詞用would have +過去分詞形式。
4.D. 根據(jù)句意“在會(huì)上我沒有看到你的姐姐。如果她來(lái)的話,她就見到我哥哥了”可知,這是考查對(duì)過去事實(shí)的虛擬。主句用could have done,故從句謂語(yǔ)動(dòng)詞應(yīng)該用過去完成時(shí)。
【重點(diǎn)歸納】
一、虛擬條件句的類別
虛擬條件句可分為三類:一類是敘述與現(xiàn)在事實(shí)相反的情況;一類是敘述與過去事實(shí)相反的情況;另一類是敘述與將來(lái)事實(shí)相反的情況。其主句和從句的謂語(yǔ)動(dòng)詞構(gòu)成如下:
1. 與現(xiàn)在事實(shí)相反
條件從句用過去時(shí)(be動(dòng)詞的過去式一律用were),主句用would (should/ might / could)+動(dòng)詞原形”。如:
If I were you, I would accept the invitation to the party.
如果我是你的話,我將接受去舞會(huì)的邀請(qǐng)。
If I knew her well, I would tell you about her.
如果我很了解她的話,我將告訴你關(guān)于她的事情。
2. 與過去事實(shí)相反
條件從句用過去完成時(shí),主句用“would /should/ might / could + have +過去分詞”, 如:
If you had been there last night, nothing would have happened.
如果你昨天晚上在那兒的話,就沒有什么事情發(fā)生了。
If I had got up earlier, I would have caught the first bus.
如果我起得更早一些的話,就趕上頭班車了。
3.與將來(lái)事實(shí)相反
條件從句用過去時(shí)或者“were to + 動(dòng)詞原形”或者“should+ 動(dòng)詞原形”,主句用“would (should/ might / could)+動(dòng)詞原形”,如:
If it were Saturday tomorrow, we wouldn’t have an exam.
如果明天是周六的話,我們就不考試了。
If you were to visit the school tomorrow, you would see Professor Smith.
如果你明天去參觀學(xué)校的話,你就會(huì)看到史密斯教授。
If it should rain tomorrow, the sports meet would be put off until next Friday.
如果明天下雨的話,運(yùn)動(dòng)會(huì)將被推遲到下周五舉行。
【特別提示】
在虛擬條件句中,謂語(yǔ)動(dòng)詞按照“后退一步法”使用,即:與現(xiàn)在事實(shí)相反,從句中用一般過去時(shí);與過去事實(shí)相反,從句中用過去完成時(shí);與將來(lái)事實(shí)相反,從句中用過去將來(lái)時(shí)。
二、虛擬條件句中的省略與倒裝
如果if虛擬條件句中有were, had, 或者should等詞時(shí),可以省略if,把這些詞放在主語(yǔ)前,形成倒裝句。如:
If I should meet her (Should I meet her), I would tell her.
如果我遇見她的話,我就告訴她。
If I were in your position (Were I in your position), I would do it better.
如果我在你的位置上,我會(huì)做得更好。
If they had made preparations (Had they made preparations), they would have succeeded.
如果他們做了準(zhǔn)備的話,他們就已經(jīng)成功了。
1. If my lawyer _______ here last Saturday, he _______ me from going.
A. had been; would have prevented B. had been; would prevent
C. were; would prevent D. were; would have prevented
2. If I had worn my overcoat, I _______cold.
A. won’t have caught B .couldn’t have caught
C. won’t catch D. wouldn’t catch
3.—If he ______ , he ______ that food.
—Luckily he was sent to the hospital immediately.
A. was warned; would not take B. had been warned; would not have taken
C. would be warned; had not taken D. would have been warned; had not taken
4. I didn’t see your sister at the meeting. If she _______, she would have met my brother.
A. has come B. did come C. came D. had come
【答案與解析】
1.A.本題考查虛擬語(yǔ)氣。因?yàn)閺木浔硎九c過去事實(shí)相反的假設(shè),故從句謂語(yǔ)動(dòng)詞用過去完成時(shí),而主句謂語(yǔ)動(dòng)詞用would have +過去分詞形式。
2.B.本題考查虛擬條件句中主句謂語(yǔ)動(dòng)詞的使用。因?yàn)閺木溆昧诉^去完成時(shí),可知主句謂語(yǔ)動(dòng)詞用would / could have +過去分詞形式。根據(jù)句意,可知選B。
3.B. 根據(jù)答語(yǔ),可知本題考查與過去事實(shí)相反的虛擬語(yǔ)氣。故從句謂語(yǔ)動(dòng)詞用過去完成時(shí),而主句謂語(yǔ)動(dòng)詞用would have +過去分詞形式。
4.D. 根據(jù)句意“在會(huì)上我沒有看到你的姐姐。如果她來(lái)的話,她就見到我哥哥了”可知,這是考查對(duì)過去事實(shí)的虛擬。主句用could have done,故從句謂語(yǔ)動(dòng)詞應(yīng)該用過去完成時(shí)。
【重點(diǎn)歸納】
一、虛擬條件句的類別
虛擬條件句可分為三類:一類是敘述與現(xiàn)在事實(shí)相反的情況;一類是敘述與過去事實(shí)相反的情況;另一類是敘述與將來(lái)事實(shí)相反的情況。其主句和從句的謂語(yǔ)動(dòng)詞構(gòu)成如下:
1. 與現(xiàn)在事實(shí)相反
條件從句用過去時(shí)(be動(dòng)詞的過去式一律用were),主句用would (should/ might / could)+動(dòng)詞原形”。如:
If I were you, I would accept the invitation to the party.
如果我是你的話,我將接受去舞會(huì)的邀請(qǐng)。
If I knew her well, I would tell you about her.
如果我很了解她的話,我將告訴你關(guān)于她的事情。
2. 與過去事實(shí)相反
條件從句用過去完成時(shí),主句用“would /should/ might / could + have +過去分詞”, 如:
If you had been there last night, nothing would have happened.
如果你昨天晚上在那兒的話,就沒有什么事情發(fā)生了。
If I had got up earlier, I would have caught the first bus.
如果我起得更早一些的話,就趕上頭班車了。
3.與將來(lái)事實(shí)相反
條件從句用過去時(shí)或者“were to + 動(dòng)詞原形”或者“should+ 動(dòng)詞原形”,主句用“would (should/ might / could)+動(dòng)詞原形”,如:
If it were Saturday tomorrow, we wouldn’t have an exam.
如果明天是周六的話,我們就不考試了。
If you were to visit the school tomorrow, you would see Professor Smith.
如果你明天去參觀學(xué)校的話,你就會(huì)看到史密斯教授。
If it should rain tomorrow, the sports meet would be put off until next Friday.
如果明天下雨的話,運(yùn)動(dòng)會(huì)將被推遲到下周五舉行。
【特別提示】
在虛擬條件句中,謂語(yǔ)動(dòng)詞按照“后退一步法”使用,即:與現(xiàn)在事實(shí)相反,從句中用一般過去時(shí);與過去事實(shí)相反,從句中用過去完成時(shí);與將來(lái)事實(shí)相反,從句中用過去將來(lái)時(shí)。
二、虛擬條件句中的省略與倒裝
如果if虛擬條件句中有were, had, 或者should等詞時(shí),可以省略if,把這些詞放在主語(yǔ)前,形成倒裝句。如:
If I should meet her (Should I meet her), I would tell her.
如果我遇見她的話,我就告訴她。
If I were in your position (Were I in your position), I would do it better.
如果我在你的位置上,我會(huì)做得更好。
If they had made preparations (Had they made preparations), they would have succeeded.
如果他們做了準(zhǔn)備的話,他們就已經(jīng)成功了。