—Is Mr. Smith still in Shanghai?
—Yes, he there for two months.
- A.has been
- B.has gone
- C.has been to
- D.has gone to
答案
正确答案:A
知识点:动词时态:现在完成时

have/has been to表示“曾经去过某地”,强调曾经到过,现在已经回来了。have/has gone to表示“已经去了某地”,强调还没有回来,现在仍在某地或者在途中。have/has been in表示“已在某地(待了多久)”,可以和延续性的时间状语连用。根据语境可知史密斯先生在上海已经两个月了。表示的是“在某地待了多久”,和延续性的时间状语进行了连用,应用has been in这个结构。但there是副词,前面不加介词in,所以应为has been。答案为A。

略
