急!一道英语语法题,高手求详解!

It was very kind of you to do the washing-up, but you __________ it.

【正确答案】

D

A) mustn’t have done

B) wouldn’t have done

C) mightn’t have done

D) didn’t have to do

搞不懂原因,求详解,谢谢!

答案:D
解析:句意:你能洗餐具实在是太好了,但是你本来不必这么做的。
此时didn't have to do=needn't have done表示“本来不必做而实际上做了”。
由句首的It was时态可知谈论的是过去。
A)mustn't have done 见到这种选项首先排除,因为musn't不能加have done。
B)wouldn't have done则多用于虚拟语气,一般不用来表示推测。
C)mightn't have done表示“可能做了某事”,与句意不符。
故选D。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-07-02
这是一句含蓄的虚拟语气,选项A没有这种用法的,must 的否定是can't ,不是mustn 't,选项B的意思是本不要做某事,选项C的意思是本不能做某事,意思都不对,只有d是本不需要做某事,符合题意!
第2个回答  2012-07-02
have to do 必须做...
need to do 需要做...
don't have to do 和 don't need to do 表示 “做...是不必要的”,属于固定用法
从前面的was看出是过去时态,所以后面用 didn't本回答被提问者采纳
第3个回答  2012-07-02
题意是‘你很善良,把该洗的都洗完了,但是
---------
A一定没做完
B没有完成
C或许没完成
D没必要去做
依题意选D项
第4个回答  2012-07-02
你本不必做这事。
A 一定还没做
BC 可能还没做
D 不必做
相似回答