or引导的虚拟语气

He must have had an accident,or he __then.
A.would have been here
B.had to be here
为什么选a不选B?

He must have had an accident,or he __then.
A.would have been here B.had to be here
答案:A。
解释:全句子是含蓄条件句。前半句是情态动词must表示对过去事实的肯定推测,后半句表示与过去事实相反的假设,是虚拟语气。
翻译:他肯定发生事故了,否则,他本来已经到这里了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-02-20
这里虚拟并不是说有or的原因
因为情态动词的完成时表示虚拟
would是情态动词
类似的还有should have done 本应该
might have done本可能。。
第2个回答  2013-02-20
选A。
He must have had an accident这句中,
must+ have done:对过去发生的行为肯定的推测。
然后or引导虚拟语气,后面也应该是对过去的事实进行虚拟。
表示过去的虚拟:If ... had done ..., ... would(might,could) have done..
因为情态动词后用动词原形,则为must have...
则用would have done形式。本回答被提问者和网友采纳