1.“It is time (that)……”句式,意為“是……的時候了”
It is time we left.我們該走了。
It is time we got up/should get up.我們該起床了。
It is high time our athletes showed/should show their best.
我們的運動員該大顯身手了。
【提示】 that從句用過去式或should do,意為“該干某件事了,時間已經(jīng)有些晚了”,should一般不省略。
2.“would/had rather (that)……”句式,意為“寧愿”
(1)一般過去時:表示現(xiàn)在或將來的愿望。
I’d rather you came next Saturday.我寧愿你下星期六來。
I’d rather you were happy.我愿你快樂。
(2)過去完成時:表過去的愿望。
I’d rather you hadn’t said it.我真希望你沒有這樣說過。
I’d rather you had been present。我真希望你當時在場。
3.“if only ...”句式,意為“但愿”,“要是……就好了”
(1)一般過去時:表示與現(xiàn)在事實相反。
If only I were as clever as you.要是我像你一樣聰明該多好啊。
If only I knew the answer.我要是知道答案就好了。
(2)過去完成時:表示與過去事實相反。
If only he had been here.要是他當時在這兒就好了。
If only I had finished the task.要是我完成了任務就好了。
(3)將來完成時:表示與將來事實相反。
If only it would stop raining! 但愿雨停下來。
【比較】
①I wake up only if the alarm clock rings.只有鬧鐘響,我才會醒。(條件狀語從句)
②If only the alarm clock had rung.要是當時鬧鐘響,就好了。(虛擬語氣)
【高考演練】
1.【安徽】People are recycling many things which they________away in the past!
A.had thrownB.will be throwing
C.were throwingD.would have thrown
【答案】D 考查虛擬語氣。句意:現(xiàn)在人們回收利用很多東西,而過去他們會將這些扔掉。根據(jù)in the past 可知,說的是過去情況,對過去情況的推測或評說,應使用“情態(tài)動詞+完成式”結構。故選D。
2.【北京】We________back in the hotel now if you didn’t lose the map.
A.are B.were C.will be D.would be
【答案】D 考查虛擬語氣。根據(jù)條件狀語從句中if we didn’t lose the map 可知,主從句都是對現(xiàn)在情況的假設,故選D。
3.【福建】________ no modern telecommunications,we would have to wait for weeks to get news from around the world.
A.Were thereB.Had there been
C.If there areD.If there have been
【答案】A 考查虛擬語氣。句意:要是沒有現(xiàn)代化的通訊,我們將不得不等待若干個星期才能獲得來自世界各地的消息。“要是沒有現(xiàn)代化的通訊”是對現(xiàn)在情況的一種假設,故從句中使用一般過去時態(tài),省略if后把were 提到從句主語之前。故選A。
4.【湖南】If Mr Dewey________present,he would have offered any possible assistance to the people there.
A.were B.had been C.should be D.was
【答案】B 考查虛擬語氣。句意:如果Dewey 先生當時在場的話,他就會盡一切可能幫助那里的人們。根據(jù)主句中的would have offered 可知,這是對過去的虛擬,故條件句用had done形式。故選B。
5.【陜西】We would rather our daughter________at home with us,but it is her choice,and she is not a child any longer.
A.would stay B.has stayed C.stayed D.stay
【答案】C 考查虛擬語氣。would rather后跟賓語從句時,從句謂語動詞用過去式表示動作發(fā)生在現(xiàn)在或將來,用“had+過去分詞”表示動作發(fā)生在過去。根據(jù)后一句中的is 可知此處動詞用過去式,故選C。
6.【天津】________ the morning train,he would not have been late for the meeting.
A.Did he catchB.Should he catch
C.Has he caughtD.Had he caught
【答案】D 考查虛擬語氣。句意:如果他趕上了早晨的火車,他開會就不會遲到了。由主句可知,這是一個與過去事實相反的虛擬語氣,因此從句中用過去完成時had done。在if引導的虛擬語氣中,當句中有were,should,had時,可將if 省去,并把were,should,had 提到主語的前面構成部分倒裝,故選D。
7.【浙江】They were abroad during the months when we were carrying out the investigation,or they________to our help.
A.would have comeB.could come
C.have comeD.had come
【答案】A 考查虛擬語氣。句意:我們在做調(diào)查的那幾個月里,他們一直在國外,否則的話他們早就來幫我們了。從句中的關鍵題眼or可以知道,此處是虛擬語氣,同時根據(jù)前面的they were abroad可以知道,此處是對過去狀況的虛擬,根據(jù)語法規(guī)則知,句中謂語動詞用“should/would/could/might+have done”結構,故選A。
8.【重慶】It was John who broke the window.Why are you talking to me as if I________ it?
A.had done B.have done C.did D.am doing
【答案】A 考查虛擬語氣。as if后的句子若表示與事實相反,須用虛擬語氣。根據(jù)前一句中謂語動詞用一般過去時可知,as if后的句子表示的是與過去事實相反的假設,用過去完成時。故選A。
9.【安徽】I________to my cousin’s birthday party last night,but I was not available.
A.went B.had gone C.would go D.would have gone
【答案】D 考查虛擬語氣。本題的解題關鍵是逗號之后的句子“but I was not available”,由此可以看出,昨晚的聚會我沒有參加,所以空處是與過去事實相反的動作,故正確答案是would have gone。故選D。
10.【北京】If we________a table earlier,we couldn’t be standing here in a queue.
A.have booked B.booked C.book D.had booked
【答案】D 考查虛擬語氣。本句是一個包含了一個條件狀語從句的復合句,從主句的謂語動詞couldn’t be standing可以推出,用的是虛擬語氣,這樣,if就是一個虛擬條件句,“訂餐”是發(fā)生在過去,故是與過去事實相反的虛擬條件句。
11.【福建】— Do you think George has passed the driving test?
— No.If so,he________his car to our college yesterday.
A.would driveB.drove
C.would have drivenD.had driven
【答案】C 考查虛擬語氣。根據(jù)句中的yesterday可以判斷出是與過去的事實相反,所以主句用would have done結構。故選C。
12.【江蘇】I should not have laughed if I________you were serious.
A.thought B.would think C.had thought D.have thought
【答案】C 考查虛擬語氣。根據(jù)主句中should not have laughed可知,本句所講與過去事實相反。If引導非真實條件句表示與過去事實相反時,從句結構為had done。故選A。
13.【陜西】My mom suggests that we________eat out for a change this weekend.
A.should B.might C.could D.would
【答案】A 考查名詞性從句中的虛擬語氣。本句是一個復合句,主句謂語動詞suggests,后跟賓語從句,謂語動詞要用(should)do sth,故選A。
14.【天津】If he had spent more time practicing English before,he________able to speak it much better now.
A.will be B.would be C.has been D.would have been
【答案】B 考查虛擬語氣。本句是一個錯綜時間虛擬句。從句是對過去事實的虛擬,謂語用had done,而主句則是對現(xiàn)在(now)事實的一種假設,所以用would do,所以B項符合句意。故選B。
15.【浙江】Eye doctors recommend that a child’s first eye exam________at the age of six months old.
A.was B.be C.were D.is
【答案】B 考查虛擬語氣。句意:眼科醫(yī)生建議:孩子在六個月時就要進行第一次眼科檢查。根據(jù)句中recommend 判斷出后面的賓語從句應該用(should)do sth。故選B。
16.【重慶】— It rained cats and dogs this morning.I’m glad we took an umbrella.
— Yeah,we would have got wet all over if we________.
A.hadn’t B.haven’t C.didn’t D.don’t
【答案】A 考查虛擬語氣。事實是帶了傘,那么假設沒帶傘,就是與過去事實相反的假設,所以從句部分要用had/hadn’t done sth的形式。故選A。
17.【陜西】The children________lost in the woods;otherwise,they would have been at the lakeside camp as scheduled.
A.must have gotB.must get
C.should have gotD.should get
【答案】A 考查情態(tài)動詞表示推測。從句子的后半部分看,謂語動詞用了would have been,說明是與過去事實相反的,故前半句應該是對過去事實的推測,排除選項B,D;選項C意思是“本應迷路,但沒迷路”,與句意不符,排除。故選A。
18.【天津】She________have left school,for her bike is still here.
A.can’t B.wouldn’t C.shouldn’t D.needn’t
【答案】A 考查情態(tài)動詞表示推測。can’t have done表示對過去的否定推測;wouldn’t have done 虛擬語氣中表示與過去事實相反;shouldn’t have done表示過去不應該做而做了的事;needn’t have done表示過去不必要做而做了的事。故選A。
19.【山東】Thank you for all your hardworking last week.I don’t think we________it without you.
A.can manageB.could have managed
C.could mangeD.can have managed
【答案】B 句意:謝謝大家上周的努力。如果沒有你們我們不可能做成。could have done 在虛擬語氣的主句中表示與過去事實相反,without引導的狀語相當于if引導的條件狀語從句。can have done 只用于否定句和疑問句的推測。故選B。
20.【山東】They________two free tickets to Canada,otherwise they’d never have been able to afford to go.
A.had gotB.got
C.have gotD.get
【答案】B 考查虛擬語氣的含蓄條件句。句意:他們弄到了兩張去加拿大的免費票,不然的話他們是付不起錢去那里的。由otherwise前一句可知,得到免費的票是已經(jīng)發(fā)的事,故用一般過去時。故選B。