You ( )such a serious mistake if you had followed his advice.
A.may not make B.might have not made
C.shouldn't have made D.might not have made.
选D.
如果你(当初)听了他的建议,就不会犯这么严重的错了.
这是对过去的虚拟,从句中表达的时间比主句的还要早,于是从句使用过去完成时,主句用should/could/might/would+(not)have done.表示对从句如果实现的结果.
对“到底是have not还是not have?”其他回答
选D。
not 要与情态动词相随。
如果你听了他的忠告,恐怕就不会犯此大错。

已解决