其实这两个句子的不同之处在于他们是否有明确的时间状语,也就是说当must have done 都是在推测过去所发生的事情,如果有明确的时间状语就用,didn't 来进行反义疑问,如果没有明确的时间状语,那么就用 haven't /hasn't 进行反义疑问
你所举的句子第一句就没有明确的时间状语,所以用hasn't he
其实这两个句子的不同之处在于他们是否有明确的时间状语,也就是说当must have done 都是在推测过去所发生的事情,如果有明确的时间状语就用,didn't 来进行反义疑问,如果没有明确的时间状语,那么就用 haven't /hasn't 进行反义疑问
你所举的句子第一句就没有明确的时间状语,所以用hasn't he