分类：教育/科学-外语学习
问题：英语Theremusthavebeenaheavyrainyes 
There must have been a heavy rain yesterday ,()
A wasn't there
B hasn't there
回答：There must have been a heavy rain yesterday ,() 
A wasn't there 
B hasn't there

A
这种题目有一个明显的标志：yesterday，所以用过去时。
你是否有疑问，为什么前面用have been，为什么是完成时？其实这里不是完成时，因为must是情态动词，本身无法体现时态，所以要表达过去的概念时，只能用have done形式。
就比如：It's said that she was there.改写同义句：She is said to have been there.（如果说She is said to be there.就看不出时间先后了。）