用went还是用has been?一般过去与完成在此的区别是???

今天碰到一道题:I______to Beijing three times.
A. went B. had gone C. have gone D. have been
看了这题后大家都一致认为D是最佳答案,但有同学觉得C也行,肯定的,C是错误答案,但是仔细想来也说不清C为什么是错误的,所以我向大家请教一下是怎么一回事(越详细越好),顺便说一下一般过与现在完成在这里的区别是什么(越详细越好)。
还有,那同学突然也提到了这句话:Last year I went to Beijing three times;Last year I have been to Beijing three times(去年我去过北京三次)到底那个正确啊,我现在被混了,请大家帮忙啊5555555~~~~~~~
谢谢~~~~~~~
应该说是有同学觉得A也行,不是C,不好意思打错了~~~~

C. have gone 是去了没回来
three times,显然是已经去过了,

则用D. have been ,是去过回来了,去过三次

第二句也是这个道理
有 three times
用Last year I have been to Beijing three times
但我觉的是不是此句应用had.

现在完成时与一般过去时的区别。常与现在完成时的第二种用法混淆,因为此时现在完成时表示的也是过去的动作和情况,只有我们强调过得的事情对现在仍有意义或仍有重要的影响才用现在完成时。

比较:I haven’t seen him this morning

I didn’t see him this morning.

不同的时态表示说话的时间不同:前句用现在完成时,而完成时是要与现在发生联系的,故说话的时间是this morning. 后句用一般过去时,说明this morning 已成为过去时间,故说话时间是this afternoon 或 this evening

比较:在用延续性动词的两种时态的区别:

He lives Beijing, he has lived here for 3 years. (还可能将继续住在这里)

He lived in Beijing for 3 years and then moved to Nanjing.(曾经住过已经搬走了)

He has smoked for 2 years (我有2年的烟龄了)

He smoked for 2 years. (我抽过两年的烟,但现在戒了)
温馨提示:答案为网友推荐,仅供参考
第1个回答  2007-07-30
Last year I went to Beijing three times;Last year I have been to Beijing three times这两句中,第一句是错的.went表示动作,在句中的意思也就是说去了,而且还在那个地方,所以不可能去过3次.所以went的后面是不能接次数的.只能用have been,表示曾经去过3次

选择题的道理与上面所讲相同.本回答被提问者采纳
第2个回答  2007-07-30
"three times"表示已经去过且回来了,符合"has/have been to"的用法,而"has/have gone to"表示去了某地而未归,不符和这里的语境,故选D
第3个回答  2007-08-01
D
根据现在完成时,"我去过北京3次了". 过去发生的事用现在完成时,故选D
第4个回答  2007-08-08
D
相似回答