问您一道您回答过的英语选择题,我没看懂您的答案,

问题描述:

问您一道您回答过的英语选择题,我没看懂您的答案,
Tom has been writing letters all afternoon,but he should have finished them by now,
______?
a.hasn’t he b.has he c.shouldn’t he d.didn’t you
您的答案是这样的:解析如下:
此句陈述部分是表转折关系的并列句,附加疑问句则需和就近的分句的主语和谓语一致.由此可以判断应该对后半句进行反问.
Tom has been writing letters all afternoon,but he should have finished them by now,______?
汤姆整个下午都在写信,那他现在应该写完了,_是吗___?
b.has he 不符合反意疑问句前肯后否的原则
d.didn't you 时态和人称都不符合答案
a.hasn't he?如果此选项可选那么应改为如下形式
but he should finish them by now,______?
即should do 表示对现在的推测,而反意疑问句要对即存事实进行反问,所以为
hasn't he?此用法可参照Must 在反意疑问句中的用法.
而原文 he should have finished ...其中的"should"就是一个单纯的情态动词
修饰现在完成时.表推测和表虚拟都与"by now"时态不符.
我不懂的地方:解析的倒数两行没看懂.为什么should是修饰现在完成时的情态动词,为什么要对should进行反义疑问,而表推测ihe表虚拟与by now从哪里看出不符.

Answer:太久没上线了.迟来的回复见谅..1.根据by now这个时间状语标志词,判断此句显然不是对过去的推测,故d.didn’t you 排除2.根据前肯后否的原则,b.has he 排除上面的解释没有问题,问题出在后面的解释不是很清晰造...