英语反意疑问句的回答,什么时候用have、do?

You must have waited for me for a long time, haven't you?
He must have gone swimming yesterday, didn't he?
请问要如何区分呢?

have 和do 都是助动词,havehas用于完成时,do用于现在时,did用于过去时
must have done 表示对过去发生的事情的肯定推测
两个句子都表示对过去的推测,主要看时间状语,第一句中是时间段for a long time ,用于完成时,所以用have。第二句是yesterday 用于一般过去时,所以用did。
希望我说明白了追问

请问第二句的have gone不是现在完成时吗?

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-12-22
完成时用have,一般现在时用do
相似回答