一道关于情态动词的英语习题The had plenty of bread,so she__a loaf.A.needed not to buy B,need not to have bought C,needn't have bought D.didn't need to buy 这道题应该怎么判断选哪个?如何判断need是做情态动词还是实义动词呢?如果做实义动词那么D的用法对吗?可以说是didn't need吗

问题描述:

一道关于情态动词的英语习题
The had plenty of bread,so she__a loaf.
A.needed not to buy B,need not to have bought C,needn't have bought D.didn't need to buy 这道题应该怎么判断选哪个?如何判断need是做情态动词还是实义动词呢?如果做实义动词那么D的用法对吗?可以说是didn't need吗

根据had,可判断为过去式。need作实义动词后加动词不定式,作情态动词后加动词原型。needn't have done是指本不需要做而做了。根据句意及语法,可判断选D。

needn't = don't need to
所以A、B就是错的,而 have bought和 didn't 我个人认为是两个时态的不同。
have done表示对现在有影响,而did表示过去,并不强调影响有多大。
但本题句意相信你能看出来是有“影响”的。所以我选C!

记住:needn't = don't need to
也就是说need可以是情态动词,也可是一般动词,情态动词后跟动词原形。
知道这一点,就可以判断,A,B为错。
D错在没有have,因为该句是个虚拟语气,意为本不需要买的,但实际上买了。
所以该题属于考你对needn't have done这个虚拟语气的掌握。
Are you clear?

need 后面有to 的时候就是实义动词,没有to直接加动词原形的时候就是情态动词
我选D

区别:needn't have done表示过去没必要做而实际上做了;
didn't need to do表示过去没必要做而实际上也没做.
根据前面的句子They had plenty of bread来判断,she没必要买面包而实际上买了,所以选C.