She is still in hospital.she__sick since last Thursday.A.had been B.was C.has been D.have been为什么正确答案是C,不是说现在完成时不能和表示过去时间的状语(last Thursday)连用吗?

问题描述:

She is still in hospital.she__sick since last Thursday.A.had been B.was C.has been D.have been
为什么正确答案是C,不是说现在完成时不能和表示过去时间的状语(last Thursday)连用吗?

she has been sick since last Thursday.她自从上周四就病了。 句子中有since,since 是现在完成时的时间状语,所以用现在完成时, has been

因为since前面的动词形态要用完成时,这是必须要记住的语法
全句解释为自从上个星期四之后,她已经生病了,为了表达这个已经也得用完成时态

这道题关键要看since,如果since后面接有表示过去的时间状语,那么主句的谓语动词就要用现在完成时。表示过去的时间一直持续到现在。

从上周四到现在一直在生病 这个是表示一个持续的状态
所以要用has been

答案:C
翻译:她上个星期三就生病了,她现在还是在医院呢.
last thursday是过去的时间状语,意思是上个星期四,如果没有since可以用过去式,可是前面有个since,意思就是说自从上个星期四,自从上个星期四一直到现在,是现在完成时,所以要用现在完成时.
现在完成时表示过去发生的状况对现在造成的影响,他过去病了,对现在造成的影响就是现在还在医院.
since也是现在完成时的特有标志.

选择c,这是典型的现在完成时态。后面有since的一般用现在完成时