哈嘍,親愛的小夥伴們,咱們之前已經學過一些簡單句,它表明的內容都是一些事實。但是,虛擬語氣表達的是與事實相反的假設或不能實現的願望,如說" If I had one million dollars, Iwould have bought a lamborghini." 這句話的意思是"如果我中了一百萬美元的話,我會買一輛藍波基尼。" 很明顯現實生活中"我" 是不會中一百萬美元的。
接下來老師告訴你們一些小訣竅:老師來告訴你們一些訣竅: 表將來時,If條件從句為: were to do/were did. 主句would/should/could/might+動詞原形。表現在,If從句為: were/did 主句為would/should/could/might+動詞原形。表過去時, If條件從句為: had done 主句為: would/should/could/might+have done. 具體用法我們一起來看下面的練習題。具體怎麼用我們一起看下面的練習題吧。
這道題的答案選擇C. 解釋:"如果我能活在25世紀,我會用一種完全不同的方式度過我的假期。" 根據時間狀語可知,考察的知識是虛擬語氣,並且是將來的時間。A. will live是一般將來時的用法,且表示的是事實,因此A項錯誤。B. are living是進行時態,仍表示事實,故B項錯誤。D. were to live表將來的虛擬,但would have spent是表示的過去的虛擬,故D錯誤。C. should live, would spend表示的是將來的虛擬故C項正確。
這道題的答案選擇A. 解析: "如果他健康的話,他就能夠讀更多的書。" 根據句子if虛擬條件從句中的"had done",可以判斷表示的是過去時間的虛擬A. can write一般現在時,故錯。C.would write過去將來時的用法,故C錯。B. could have writen 表示過去的虛擬,could意思是能夠。D. should have writen表過去的虛擬 但是should意思是應該,故D錯。所以選擇C項,符合句意。
這道題的答案選擇A. 解析:"你沒有採取他的建議,如果你採取他的建議,你就不會犯這樣的錯誤。" 根據語言語境,說明發生的時間為過去,並且與事實相反。B. if you had taken,表過去的虛擬,但would make表示的是將來或現在的情況故B錯誤。C項were you to take; shouldn't have made表示將來的時間,故C項錯誤。D項中won't的用法錯誤。A. Had you taken, wouldn't have made表過去的虛擬,故A正確。
這道題的答案選擇B。解析:"要不是你的幫助,我們就不會成功。"這是虛擬語氣的特殊用法,if可以省略,把should/were/had放在句首,而且有not不提前。A. Hadn't it been, not提前錯誤,C. if it had been, 雖然過去的虛擬但是句義不符故錯。D. If it were表現在或將來的虛擬故錯。B. Had it not been表過去虛擬形式正確,故B正確。
親愛的小夥伴們,我們今天的課就到此結束了,我們下次再見。