解释一下一道英语选择题。急………………

来源:百度知道 编辑:UC知道 时间:2024/05/24 11:10:43
I told Sally how to get there,but perhaps I_________for there.
A.had to write it out B.must have written it out
C.should have written it out D.ought to write it out
这个题选C,但不知道为什么,哪位高手详细地说明一下为什么?

should have done 是本应该的意思,意思是”过去应该做某事,但最终没做“ 有点后悔了

我告诉SALLY怎么去哪,但或许我本应该写下来怎么去哪

如果选择A ,
I told Sally how to get there,but perhaps I had to wirte it out for there.
我告诉SALLY怎么去哪里,但可能我不得不写下来

意思前后一些不通顺

B.D 都对不上,所以C正确

should have done 意思是应该做某事,而实际上没做

虚拟语态要用should

C should have done表虚拟 是本该做但没做的意思
A had to do是需要应该
B must have done是一定
D ought to相当于should

对过去事实的一种虚拟,本应该做却没做,所以should+have done

C