0 虚拟语气练习题

主题 地址
1. 主将从现 点击跳转
2. 对现在的虚拟 点击跳转
3. 对过去的虚拟 点击跳转
4. 虚拟语气中 could 的用法 点击跳转
  • 一般来讲,英文当中的虚拟语气可分为两个大的体系:
  • 一是表示与事实相反的或假象的情形,通常由 if 引导,叫做“非真实条件句”,或者叫“虚拟条件句”。这部分内容是这节的重点。
    • 如: lf l were you, I’d start looking for another job.
  • 二是在名词从句中使用虚拟语气,表示建议、命令或要求等语气,这是一个完全不同于非真实性条件状语从句的虚拟的结构形式,难度并不大。
    • 如: They propose that you (should) read the rules carefully.

1. 复习:主将从现

  • if 条件句:主句用一般现在时/现在完成时表示将来

2. 对现在的虚拟

  • 虚拟的两种情况:

    • ① 不是真的
    • ② 不可能发生的
  • 形式: “虚拟”就是谓语动词的一种特殊变化,通过把谓语动词“变态”(改变时态),即可表达虚拟

    • 从句:if + 主语 + 过去式(be动词用 were), 主句:主语 + should/ would/ might/ could + do
  • 例句:

    • If I had a million dollars, I would build a big swimming pool.
    • If you were the President, what would you do? 如果你做总统,你会做什么。
    • If dogs could talk, they would tell some interesting stories. 如果狗会说话,它们会告诉我们很多有趣的事情
    • If he didn’t travel so much, he would have more money. 如果他不旅游这么多次,他会有很多钱
    • If I was you, I would study English well.
    • If I had 100 million, I would build a big swimming pool.

对现在的虚拟中 BE 的使用

  • 无论是第一人称,第二人称,还是第三人称,推荐均使用 were,而不用 was,were 会显得更正式
    • If I were taller, I would play basketball.
    • If Lucy were here, she would know what to do. 用 were hera,而不是 was here,更正式一些
    • If I were you, I would … I’d … 表达建议
    • If I were you, I’d get a new car.
    • I would not stand there if I were you.
  • 注: If I were you, I would … / I’d …来表达建议

If I + 现在时 和 If I + 过去时的区别

  • 它们之间的区别在于是否可能发生,真实能够发生的事情用 If I go,不能发生用 If I went 进行虚拟
    • If I go to Changsha, I will visit Jack. 这句话完全可能的,是真实可以发生的
    • If I went to the moon, I would take a lot of photos.
    • If I see Jack, I will give him my address.
    • If I saw the President, I would say “Hello”. 不可能
  • 注:此项想表达的语法点为:If … + 过去式 …,用于表示不可能发生或者不存在的事情。 if … + 现在时 …,表示真实存在且完全可能发生的事情。

3. 对过去的虚拟

  • 用于表达过去没有发生的事情
  • 形式: 从句 if … had done … , 主句:主语 + should/ would/ might/ could have done …
    • If the weather had been better, we would have gone to the sea. 之前如果天气好,我们就去海边了
    • If you had asked me, I would have helped you.
    • If Jack had seen you, what would he have said to you? 如果 Jack 看到了你,他会对你说什么呢?(表达过去见到的话)
    • If she had not gone skiing, she would not have fallen and broken.如果她没有去滑雪,就不会摔倒(是过去发生的)
    • lf you had got there earlier, you should have met that celebrity.如果你早点到那儿,你就会见到那个名人了。

4. 将来时间的虚拟

  • 由于将来的情形还没有发生,因而不可能成为一个事实,即谈到将来的一切情形都不是一个事实。对于将来时间的虚拟不可能以事实为基础,只能是表达说话人的一个设想或者愿望。对于将来的虚拟只适用于假设条件句,不能表达一个与事实相反的虚拟。

  • 从句:if + 主语 + should/were to + 动词原形 或 if + 主语 + 动词过去式(be只用were)

  • 主句:主语 + should/ would/ might/ could + do

    • lf Helen were to be here next Monday, l would tell her about the whole thing.如果海伦下周一来这儿的话,我就会告诉她这件事的始末。
    • 分析:本句是表示将来虚拟假设的情形。表明说话人认为Helen明天会来的可能性很低,所以言外之意是“我”可能没法告诉她。
    • lf he should go to a top University, he would make full use of his time.如果他要去上一所顶尖大学的话,他就会充分利用他的时间。(事实:他上顶尖大学可能性很小,几乎不可能)
    • 分析:这也是表示将来虚拟假设的情形,是说话人的主观想法,认为可能性很小,但不能表示完全与事实相反。
    • lf there were a heavy snow next Sunday, we would go skating.如果下周日下大雪,我们就去滑冰。(事实:说话者认为下雪可能性很小,几乎不可能)
  • 事实上,对于很多将来的情况,选择用虚拟还是不用虚拟,完全取决于说话人对所陈述事件的态度,或者说虚拟语气能表明说话人的态度。
    如:

    • What do you think would be the price of my apartment, if l were to sellit?
    • 假如我把我的公寓卖掉,你觉得会是什么价格?
    • 分析:这里“卖掉公寓”这个事件是说话人可以控制的,不是像“假如我早生10年”那样完全不能掌控,但说话人依然用了将来虚拟的谓语形式 were to sell,这只是向听者、读者表明自己这样一个态度——自己不会卖或不大可能会卖这个公寓的。但是至于真正的为什么不大可能卖这公寓的原因,只有说话人自己才知道。

5. 混合时间的虚拟

主现从过——主句对现在虚拟,从句对过去虚拟

  • 从句:lf + 主语 + had + done
  • 主句:主语 + should/ would/ might/ could + do
  • 这里的主句是表示对现在的虚拟,而 if 引导的条件状语从句是表示对过去的虚拟,即主句与从句所虚拟的时间不一致。
    • lf l had worked hard at school, l would be an engineer now.如果我当时在学校学习刻苦的话,我现在就是一个工程师了。
  • lf l had studied English three years ago, I might have a chance of going abroad for further study now. 如果我三年前学过英语,我现在可能就有机会出国深造了。
  • lf l had spoken to him yesterday, l should know what to do now.假如昨天我对他说了,现在我就知道该怎么办了。

主过从现——主句对过去虚拟,从句对现在虚拟

  • 从句:lf + 主语 + 动词过去式(如果是 be 动词则只用 were)
  • 主句:主语 + should/ would/ might/ could + have done
  • 这里的主句是表示对现在的虚拟,而if行|导的条件状语从句是表示对过去的虚拟,即主句与从句所虚拟的时间不一致。
    • lf he were free today, we would have sent him to Beijing.如果他今天有空的话,我们就已经派他去北京了。
    • lf you knew her better, you wouldn’ t have said that.如果你真的了解她的话,你就不会说出那种话了。
    • 分析:本句话主句 you wouldn’ t have said that 是对过去的虚拟,即话已经说出来了;从句 if you knew her better 是对现在的虚拟,表达的意思是你现在还是不了解她。也是完全根据句子的意思来选择的时态和虚拟语气。这种用法算是比较有难度的了,也没有前面的常见。

6. 倒装虚拟

  • 虚拟从句常常可以采用倒装结构表达。具体来说就是,当 if 导的条件句省去if 时,可将 should, had 或 were 置于句首,从而构成倒装虚拟句,而意义不发生改变。
    • Had you not helped me, l should have failed.= lf you had not helped me, l should have failed. 要是没有你的帮助,我就失败了。
    • Were you in my position, you would do the same.= lf you were in my position, you would do the same. 假如你处在我的地位,你也会这样干的。
    • Had such a disaster occurred, the damage would have been incalculable.= lf such a disaster had occurred, the damage would have been incalculable 如果这场灾难发生,损失将难以估量。

7. 虚拟语气的特殊用法

陈述句 + or + 虚拟主句

\quad\quad 这里的连接词除了 or,还可以有 or else 和 otherwise。这里我们要注意的是,or 前面的句子是陈述语气,而后面的句子用的是虚拟语气,而且是虚拟主句。

  • 1.主语 + 动词一般现在时,or + 主语 + would do → 表示对现在事实的虚拟

  • 2.主语 + 动词一般过去时,or + 主语 + would have done → 表示对过去事实的虚拟

    • We didn’t know his number, otherwise we would have called him.我们不知道他的电话号,要不然我们当时就会给他打电话了。

    • 分析:这里的didn’t是表示陈述过去的事实,而 otherwise 的后面则是对过去的虚拟,而且是虚拟主句的形式,因此要用 would have done。如果用比较常规的虚拟语气则可以说成 We would have called him if we had known hisnumber.

    • They can’t want it, or else they’d request it.他们肯定是不想要,想要的话就要求了。

    • 分析:这里or else后面的句子表示对现在的虚拟,相应地,其前面的半个句子就是表示陈述过去,所以要用一般现在时,虚拟了与事实相反的状况。

虚拟主句 + but + 陈述句

\quad\quad 与 or 等词不同的是,这里 but 的前面是虚拟主句,but 的后面是陈述句。这个句型使用的句式是:

  • 1.主语 + would do,but + 主语 + 动词一般现在时 → 表示对现在事实的虚拟

  • 2.主语 + would have done, but主语+动词一般过去时 → 表示对过去事实的虚拟

  • 此外,句中的 would 可换成 should/might/could。这一类特殊虚拟句的关键标志词是 but,随着 but 的转折,句子的语气也由虚拟变为不虚拟,即 but 将句子一分为二, but 前面部分的句子是虚拟语气,but 后面部分的句子为陈述语气。

    • She could not have bought that house, but she inherited a big fortune from her father. 她本来是买不起那栋房子的,不过她从她爸爸那里继承了一大笔财产。
    • 分析:这句话相当于lf she had not inherited a big fortune from her father, she could not have bought that house.这就解释了为什么 but前面的半句话相当于虚拟主句形式了,因为but后面的陈述句相当于一个虚拟从句。

8. 名词性从句的虚拟

  • 名词性从句主要包括四种:宾语从句、表语从句、主语从句和同位语从句。不管是哪种名词性从句,只要是对应的主句中有表示“建议、命令、要求”的词(无论词性是什么),名词性从句都需要虚拟。名词性从句的虚拟要把谓语动词变成“should +动词原形”,并且 should 可以省略。

  • 名词性从句详细讲解

  • 虚拟语气除了用在上述非真实条件从句以外,在特定的名词从句中也需要用虚拟语气。这样的名词从句中都含有特定的标志词,这些标志词可用来表示愿望、建议、命令、请求或意志等语气。名词从句虚拟句的谓语变化的形式只有一条规律:无论其主句的谓语动词是何种形式,从句的谓语形式均为 should+动词原形,其中 should 可以省去。

1. 特定动词引导的宾语从句中

【考研英语语法】虚拟语气-编程知识网

  • They request that a delegation be sent to their country.他们请求派一个代表团去他们国家。

  • 分析:主句的动词为request,宾语从句使用虚拟语气,从句的谓语动词besent相当于should be sent,这里的should被省去了。

  • l suggest you ask him some specific questions about his past.我建议你问问他有关他的过去的一些具体问题。

  • The committee proposed that new legislation should be drafted.委员会建议着手起草新法规。

  • They insist that l stay there for supper.他们坚决要求让我留下吃晚饭。

2. 在 it is + 形容词或过去分词或特定的名词 + that 的主语从句中

【考研英语语法】虚拟语气-编程知识网

  • lt’s imperative that you apologize to him immediately.你必须立即向他道歉。
  • 分析:that主语从句中使用虚拟语气should+do的格式,其中should省去了。
  • lt is advisable that you fasten on the opportunity.你抓住这个机会是明智的。
  • lt is surprising that he should win the election.真是奇怪,他在竞选中获胜了。
  • lt is vital that the matter be keep secret.这件事要保密,这是至关重要的。

【考研英语语法】虚拟语气-编程知识网

  • lt is requested that all members be present at the meeting.要求所有的成员都出席这个会议。
  • lt is strongly recommended that the machines should be checked everyyear. 建议每年一定把机器检修一次。

【考研英语语法】虚拟语气-编程知识网

  • The committee rejected a suggestion that share options should be offered to junior employees. 委员会否决了把股票期权分给初级雇员的提议。
  • lt is my proposal that he be sent to study further abroad.我建议,把他送到国外去学习。

9. 虚拟语气的其他常见用法

(1)wish 的虚拟句用法

wish 后面的宾语从句可用来表示说话者难以实现的或与事实违背的愿望,具有较强的感情色彩,可分别表示对现在、过去和将来情景的虚拟。

  • 1.对现在的虚拟:即表示对现状的愿望,从句的谓语动词用过去时

    • l wish he were here.我真希望他现在就在这。(实际上没有在)
    • l wish l were a little younger. 我希望我能够年轻一点。(事实上不能实现)
    • l wish l could travel to the moon.我希望我能够登上月球。(实际上我不能)
  • 2.对过去的虚拟:即对过去发生的事情表示遗憾或后悔,从句的谓语动词用过去完成时 had done 或 "would/could have done”,意指从句的谓语动词所表示的动作发生在主句的谓语所表示的动作之前。

    • l wish l had never come. 我真希望我当时没来。
    • l wish l had studied harder when young. 真希望我当时能更用功就好了。
    • l wish l could have gone with you to the movie last night.我真希望昨晚能和你一起去看电影。
  • 3.对将来的虚拟:指对将来发生的事情的愿望,从句的谓语动词用 “would/could+动词原形”,表示从句的谓语动词所表示的动作可能发生在主句的谓语所表示的动作之后。

    • l wish l could be a master of this subject.但愿我能精通这门学科就好了。
    • l wish he could explain what he means.我希望他能解释一下他是什么意思。
    • l wish you would shut up. 我希望你能闭嘴。
  • hope 和 wish的区别: hope 后接的宾语从句都是接一般性时态,不使用虚拟语气

    • l hope he is safe.我希望他安然无恙。
    • l hope they are having a good time.我希望他们正玩得愉快。
    • l hope they have finished the work.我希望他们已经把工作做好了。

(2)if only 的用法

  • if only 表示“但愿” “要是…就好了”,只用于与现在事实或过去事实相反的虚拟语气当中。只其用法和 wish 基本相同,可表示对现在和过去的虚拟,只是比 wish 具有更强烈的感情色彩。
    • lf only l had known it earlier. = l wish l had known it earlier.要是我早点知道这件事就好了。
    • lf only l could get a bite of that cake. =l wish l could get a bite of thatcake. 要是我能吃一口那蛋糕就好了。

(3)as if/though 的用法

  • as if 和 as though 均为连接副词,引导状语从句,使用时有三种时态

  • 1.表示极大的可能,使用正常的陈述语气

    • lt looks as if/as though it is going to rain.看起来好像要下雨了。
    • lt seems as though there is going to be an election soon.看起来好像很快就要选举了。
  • 2.表示与现在事实相反或对现在情况有所怀疑,动词用一般过去时

    • He spends as if he were a millionaire.他用起钱来像个百万富翁似的。
    • lt sounds as though you had a good time.听起来你好像过得挺愉快。
  • 3.表示与过去事实相反,动词用过去完成时

    • The past year has been blotted out as if it had never been.去年的事已淡忘,好像从未发生过一样。
    • Jack tore into the steak as though he hadn’t eaten for a week.杰克大口吃起牛排来,好像一个星期没有吃东西似的。

(4)lt is time + that从句的一般过去时

  • lt is time/about time/high time + that 从句的一般过去时,表示“该是…的时候了”。使用此句型时,that 从句的动词要用一般过去时。

    • lt is time (that) he went to bed.该是他上床睡觉的时间了。
    • 分析:本句暗示现在该是他睡觉的时候了,但他却没有睡觉,暗含晚了一点的意思。其动作与现在事实相反,故用一般过去时。
  • lt is time/about time/high time + that 从句的一般过去时,表示“该是…的时候了”。使用此句型时,that 从句的动词要用一般过去时。
    再如:

    • lt is time we did it.该是我们行动的时候了。
    • lt is high time our children learned some manners.该是我们的孩子学点规矩的时候了。

(5)would rather 的用法

  • 1.would rather do something

  • would rathe r后面接动词原形,可以表示将来或现在的事件,意指“主语宁愿自己做某事”。这是would rather最为常见的用法。

    • l would rather die before asking him for help.我宁愿死也不愿向他求救。
    • 如果要和另外一件事情来比较,这时要用 than 来引出另外的事情。如: Mary would rather travel by train than by plane. 玛丽宁可乘火车而不愿乘飞机旅行。
    • 注意,对该句型的否定,要在动词的前面加 not,而不是在 would 的后面加not。如:l would rather not venture an opinion. 我宁愿不要冒昧地发表意见。
  • 2.would rather have done something

  • 这是would rather后面接动词完成式的用法,表示过去的事件,意指“主语宁愿自己过去做了某事,但实际上没有做”,因此,具有过去虚拟的意味,如同过去虚拟条件主句的谓语形式。

    • l would rather have gone to the theatre than stayed home night.我真希望昨天晚上去看了戏而不是呆在家里。
    • 分析:这里的would rather have gone表示对过去的虚拟,意思是“还不如去了”,但实际上并没有去。
  • 3.would rather someone did

  • 这是would rather后面接从句的用法,意指“主语宁愿让…做某事”。这里从句的谓语用一般过去式,但表示的是现在或将来的事件,如同现在虚拟条件从句的谓语形式。

    • Don’t come tonight.I’ d rather you came next weekend.今晚就别来了,我希望你下周末过来。
    • 分析:这里的时间状语next weekend显然是表示一个将来的时间,但句子的谓语却用了came这样的一般过去式,而不用will come,甚至也不用would come。
    • l would rather he didn’t tell her about it. 但愿他不会把这件事告诉她。

(6)but for 的用法

  • 表示“若非,要不是…",此类句型仅限于与现在事实及过去事实相反的虚拟语气。

  • 1.与现在事实相反:若非…就…

    • 句式: But for+名词,主语 + would/could/might/should/ought to + 动词原形
    • But for his hard work, l wouldn’t like him.要不是他努力工作,我才不会喜欢他。
    • 分析: l wouldn’t like him是与现在事实相反的虚拟语气。此句还可以表达为lfwere not that he works hard, l wouldn’ t like him.
    • But for music (=Were it not for music), life would be dull.要不是音乐,人生会很无聊。
  • 2.与过去事实相反:若非当时…就…句式:

  • But for + 名词,主语 + would/could/might/should/ought to + have done

  • But for your advice you gave me, l should have failed. 要不是你的忠告,我会失败的。

  • 分析: l should have failed 是与现在事实相反的虚拟语气。此句还可以表达为 lf it had not been for the advice you gave me, l should have failed.

10. 虚拟语气中的 could

  • 虚拟语气中如果要用到 would be able to, 可以直接用 could 替代
    • If you arrived early, we would (be able to / could) talk about the meeting.
    • If Jack came, he would be able to / could help with the dog.
    • If 中也可以使用 could,用来表达虚拟(对 can 进行虚拟)
    • If I could sell my car, I could buy a computer.

11. 总结

if 虚拟条件句:

【考研英语语法】虚拟语气-编程知识网

口诀:从句往前推,主句四加一,将来同现在

  • “从句往前推”,指的是表达虚拟时,要把从句往前推一个时态。如果假设“现在”的虚拟,从句往前推,变成一般过去时(注意如果是 be,只能用 were,不能用 was,无论主语是谁);如果是假设过去的虚拟,从句往前推,就变成了过去完成时。

  • “主句四加一”,其中“四”指的是主句中谓语动词的形式都是用这四个情态动词——“would, could, should, might”(任选一个)。而“加一”指的是情态动词后加上一个跟从句对应的原形形式,也就是说如果从句用 did,那么主句就加对应的原形 do;如果从句用 had done, 则主句用对应的原形 have done(因为情态动词后必须用动词原形)。

  • “将来同现在”,指的是假设将来事情的虚拟可以跟假设现在的完全相同。其实假设将来事情的虚拟一共有三种形式 did (were) , were to do, should do 但是建议大家记住一种跟现在一样的,会比较简单。

  • 【补充】 如果需要“写”虚拟条件句,要记住这个表格和口诀。想“看懂 if 条件句”,只有一条:翻译成中文