你还在中国吗? 能这么翻译吗?
Have you been in China yet ? 用现在完成时可以吧?
答:不可以
原因:完成时是不能乱用的!你的这句,翻译成中文是:
你去过中国吗? (来自百度翻译)
另外上面的句子 能用 still 吗? still 能用在完成时吗?
答:通常不可以,still表示“仍然”,而完成时通常是用于表示“发生在过去,对将来有影响”,用still不妥。
这句话应该译成:Are you still in China?
I have been in China for 3 years. 是正确的。
I have been being in China for 3 years. 用了 现在完成进行时 对不对了?语法角度来说。
答:对!
I have been being in China for 3 years.
这句话的百度翻译是:我已经在中国的3年(多别扭)。
但是我又看了一下,应该是正确的。
在百科的词条上,有这样一些正确的例句:
是不是跟你的句子成分一致?
“ 现在完成进行时,也是可以表示 从过去持续到现在,并且继续下去。觉得说的过去这里”
这样的理解有一点片面,事实上,用中文解释英语语法本来就会有歧义,你在学习完成时,能够这样提问很好,但是别在字句上过分深究,还是多看一些完成时的例句。
对于现在完成进行时,我看了一下,百科上的内容还是有很多参考价值的,推荐一下:
http://baike.baidu.com/view/758109.htm
1 你还在中国吗? 能这么翻译吗?
可以,只是,加still的话,最好去掉yet——
Have you (still)been in China ?
still 仍然;还是
2、 I have been in China for 3 years 正确无疑。
I have been being in China for 3 years 错误。
首先,be doing是进行时态的形式,其中doing,经常使用【动作性动词】,而不能使用【状态性动词】,而be动词,恰好就是【状态性动词】。参见——
http://baike.baidu.com/view/758109.htm
(五)表示状态的动词不能用于现在完成进行时。
I have known him for years.我认识他已经好几年了。
* I have been knowing...
这类不能用于现在完成进行时的动词还有:love爱,like喜欢,hate讨厌,等等。
另外,be动词的常见搭配结构有:
be to do sth
be doing
be done
having been doing
having been done
to be done
to have been done
祝你开心如意!