If he ___ to the teacher attentively,he ___ the answer to the problem now.A.had listened,would have known B.listened,would know C.listened,would have known D.had listened,would know

问题描述:

If he ___ to the teacher attentively,he ___ the answer to the problem now.
A.had listened,would have known B.listened,would know
C.listened,would have known D.had listened,would know

让我想想。虚拟语气。

楼上的,你们都是胡说
这道题应该选A,不错,这句话是虚拟语气。此句应该是对过去情况虚拟,主句用would have done,从句用过去完成时。

B 虚拟语气错综条件句

D
表示假如过去他认真听老师讲课,那么现在他就应该知道问题的答案。
实际是:1、过去他没有认真听 2、现在他也不知道答案。
所以前后都用虚拟语态,前面是过去式的虚拟语态,用过去完成时,后面是现在的虚拟语态,用过去时

If he ___ to the teacher attentively,he ___ the answer to the problem now
D.had listened,would know
这道题目是考查虚拟语气中的交叉虚拟问题.
即,当虚拟条件句中,主句和从句的时间是不一致的时候,应分别考虑不同时间下的虚拟状况.
按照本句的实际情况,listen发生的时间应在过去,那么对于过去时间的虚拟采用过去完成时,had listened ;而know the answer 发生在现在,那么对现在时间的虚拟采用would +动词原形,也就是would know

D
虚拟语气,所有时态都要往后推一次

选D