英语语法关于If引导的条件状语从句或虚拟语气Ifiwereo-查字典问答网
分类选择

来自梁金昌的问题

  英语语法关于If引导的条件状语从句或虚拟语气Ifiwereonthespotthatday,___________________________.A.Ishouldbeabletopreventthedisasterfromhappening.B.Iwouldhavebeenabletopreventthedisasterfromhappening选择

  英语语法关于If引导的条件状语从句或虚拟语气

  Ifiwereonthespotthatday,___________________________.

  A.Ishouldbeabletopreventthedisasterfromhappening.

  B.Iwouldhavebeenabletopreventthedisasterfromhappening

  选择那个?标准答案是B.

  这里使用的是虚拟语气吗?如果是,那不是应该使用Ifihadbeenonthespotthat

  这是我网上找到的解释,担不是非常理解:

  7.条件从句与结果主句所表示的时间不一致

  (1)当条件从句与结果主句所表示的时间不一致(如一个是过去发生的,一个是现在发生的)时,虚拟语气的形式应作相应的调整。如:

  Ifyouwereinbetterhealth,wewouldhaveaskedyoutocome.

  如果你身体好一些,我们早就请你来了。

  Ifwehadconsultedhimonthequestionyesterday,weshouldknowwhattodonow.

  假如昨天我们向他请教了这个问题,现在就知道该怎么办了。

  Youwouldbemuchbetternowifyouhadtakenmyadvice.假如你接受了我的意见,你现在就会好得多。

  (2)如果条件从句用ifIwere...,结果主句则可用任何时间的虚拟形式。如:

  IfIwerenotbusy,Iwouldhavecome.

  假如我不忙,我就会去的。(were表过去)

1回答
2020-02-11 00:26
我要回答
请先登录
郭姝梅

  Ifiwereonthespotthatday,Iwouldhavebeenabletopreventthedisasterfromhappening,

  这句话地意思是:如果那天是我在当班,我就能够阻止灾难的发生了.

  这里用的的确是虚拟语气,虚拟的也是过去的时刻发生的事,但是并不是过去的事情都得用过去完成时来表虚拟,这里用were并没有错

  但是你如果用完成时也是可以的:Ifihadbeenonthespotthatday,Iwouldbeabletopreventthedisasterfromhappening,这个句子也是对的

  这两个都是虚拟的过去,但是并非二者选其一,两个都是对的啊

  你举得这个例子:IfIwerenotbusy,Iwouldhavecome.也表过去

  如果我不忙(过去的某个时间),我就去了

  下面这两个句子应该会对你有启发:

  IfIwereyou,Iwouldhavetakenhisadvice.我要是你,我就采纳了他的建议.(从句指现在,主句指过去)

  Iftheweatherhadbeenmorefavorable,thecropwouldbegrowingstillbetter.如果气候更适宜一些,庄稼会长得更好.(从句指过去,主句指现在)

  ps:ifIwereyou,Iwouldtakethisanswer.

2020-02-11 00:28:10

最新问答

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  •