高中英语疑问

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 与might have 意思同吗?这可以用 might have 吗?
亟待帮助,感激!

这里考查的不是虚拟语气,是情态动词+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较弱。
下面给你一份资料供你参考
.对过去情况的推测,用“情态动词 + have +过去分词”。
(1)It must / may / might / could have rained last night .The ground is wet.
地湿了,昨晚肯定/可能/也许下雨了。
(2)The door was locked. He can ( could ) not / may ( might ) not have been at home .
门锁着,他不可能/可能不在家。
(3)Can / Could he have gotten the book?
难道他找到书了吗?
注:情态动词 should /ought to表推测时,意为“想必会,理应……”
与“have +过去分词”连用时,意为“本应该做某事却没做”。例如:
(4)It’s seven o’clock. Jack should/ought to be here at any moment.
现在七点钟了,杰克理应随时到达。(推测)
(5)She should / ought to have attended your birthday party, but she had to look after her mother in hospital.
她本该出席你的生日晚会的,可是她得在医院照顾她妈妈。
(6)Tom should not /ought not to have told me your secret, but he meant no harm. 汤姆本不该告诉我你的秘密,可是他并无恶意。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-02-12
首先,谁告你它用虚拟了。这里考察情态动词的语气强烈程度和所偏向的意思。must语气太强,可当作一定会发生,不符。这里不用虚拟语气。A通常表示“应该”发生的情况。should后跟完成时表示与事实相反的情况。同时根据语意,这里应该填“可能”发生的情况。might的语气比could相对较弱。而这里说话人有种警告的意思,也不太好
相似回答