It wasn't a good idea to throw the bottle out of the window.
It____ hit somebody.
A.would have
B.should have
C.could have
D.must have
1\首先为何要用虚拟?(ABCD都用了虚拟)
2\为什么用could have不用would have,有什么区别?
3\ could have 与mighthave意思同吗?这可以用
mighthave吗?
这里考查的不是虚拟语气,是情态动词+have done 表示对过去的情况进行推测。could have done 对过去的事情进行肯定的推测,意思是“也许会...”would have done只用在虚拟语气的主句中,所以这里不对。should have done表示过去本应该做某事而实际上没做,含有责备的意思。如:You couldn't remember his address.You should have written down the address for him.might have done可以表示对过去的事情的肯定推测,但是语气比could较弱。下面给你一份资料供你参考.对过去情况的推测,用“情态动词 +