完成时,完成进行时,语法问题

2024年11月22日 19:00
有2个网友回答
网友(1):

  •  你还在中国吗? 能这么翻译吗?
    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

网友(2):

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
祝你开心如意!