I( ) there for three years.A went B have C haven't been Dwas
问题描述:
I( ) there for three years.A went B have C haven't been Dwas
答
选C
看句子结构
I是主语,haven't been是谓语,there是宾语,for three years是时间状语.结构完整.时态是现在完成时.
意思是:我3年没去那里了.
如果选D,was是系动词,那么后面应该有表语,表语一般都是名词、代词等充当,还要考虑句子含义是否符合逻辑,而这里的there明显不可能是表语,你想想看,如果是was那么久翻译为“我不是那里3年了”,通顺吗?所以D是错的.David has been in the army for three years.(现在还在部队里)David was in the army for three years. (现在不在部队里了)所以啊,要看句义。你是不是加了个否定词就不理解了?虽然肯定句和否定句翻译起来差很远,其实是一样的思路。若是was, 我在那儿呆过三年。(现在不在那儿了)这是语法书的两个例子David has been in the army for three years.(现在还在部队里)David was in the army for three years. (现在不在部队里了)因此我认为C、D都行。想了一下,我也觉得CD都行