Haven't you finished your work in the western area as a volunteer?

来源:百度知道 编辑:UC知道 时间:2024/05/16 20:19:52
Haven't you finished your work in the western area as a volunteer?
Yes,I ____ there for five years

答案是stayed 为什么不是have stayed 不是有个for吗?那就现在完成啊

最佳答案是stayed
因为stay是延续性动词,后可接for+时间状语
问话者用的是现在完成时
而答话者用stayed表示过去,这里足已让人理解时态的前后关系了,所以用完成时是多余的,虽然从语法上够不上是错误,但是按照语言经济原则,用stayed 足矣。

因为说话者现在已经回来了,所以表示过去的事情。

Stay本来就是延续性动词,不用加完成时也可以有For

stay+for可以表示延续的意思..

其实我觉得用had stayed更好,过去完成时。