现在完成时的句子(精选5篇)
时间:2023-07-07
时间:2023-07-07
现在完成时常与for+一段时间,或since+过去时间点/一般过去时态的从句连用。
在表达一个在过去开始而现在仍在继续或刚刚结束的动作时,某些动词既可以用现在完成时,也可以用现在完成进行时。这样的动词有expect,hope,learn,lie,live,look,rain,sleep,sit,snow,stand,stay,study,teach,wait,want,work等。
howlonghaveyoulearntenglish?你学习英语多久了?
howlonghaveyoubeenlearningenglish?(译文同上。)
hehassleptfortenhours、他已经睡了十个小时了。
hehasbeensleepingfortenhours、(译文同上。)
ithassnowedforalongtime、雪下了好长时间了。
ithasbeensnowingforalongtime、(译文同上。)
没有进行式的动词不可能有这样的用法,即现在完成进行时不能代替以下例句中的现在完成时:
they’vealwayshadabiggarden、他们一直有一座大花园。
howlonghaveyouknownthat?你知道这事多久了?
he’sbeeninhospitalsincehisaccident、他从发生事故之后,一直在医院里。
注意:现在完成进行时可以和时间短语连用,也可以不连用,这一点就有别于现在完成时,因为后者与像forsixdays,sincejune,never等一些时间短语连用才能表示这类动作。不用这些时间状语时,现在完成时指的是完成了的一个动作。
b用现在完成时表示的反复的动作,有时可以作为连续的动作用现在完成进行时表示:
i’vewrittensixletterssincebreakfast、早饭后我已经写了六封信。
i’vebeenwritingletterssincebreakfast、早饭后我一直在写信。
’tthinkanyone’sin、
我敲了五次门。我想屋里没有人。
i’’tthinkanybody’sin、
我一直在敲门。我想屋里没有人。
注意:现在完成进行时表示一种看来似乎是不间断的动作,所以提到做一件事的次数或一共做了多少事情时,不能用现在完成进行时。
c用现在完成时表达的单一动作和用现在完成进行时表达的动作是有区别的:
(a)i’vepolishedthecar、我擦了车。意指这件事已经结束了。
(b)i’vebeenpolishingthecar、我在擦车来着。
意指过去一小时我就是这样度过的,而不一定指动作已结束。注意:用现在完成进行时表示单一动作时,这一动作持续到说话的时间或者接近这一时间为止:
he’sbeentakingphotos、
他一直在拍照。(他大概手里正拿着照相机。)
urnedoffthelight、他已把灯关了。
ufoundyourpenyet?你已找到你的钢笔了吗?
ivedheresince1978、自从1978年以来,他一直住在这儿。
eeninthearmyformorethan5years、我在部队已经呆了五年多了。
eardnothingfromhimuptonow、到目前为止我没有他的任何消息。
ntmetsincethen、自那以后我们再没见过。
rfathergonetoamerica?你的父亲去过美国吗?
skatedforfive已经滑冰五个小时了。
eadabookthesedays、这几天我一直在看一本书。
uhadyourlunchyet?你已经吃过午饭了吗?
在表达一个在过去开始而现在仍在继续或刚刚结束的动作时,某些动词既可以用现在完成时,也可以用现在完成进行时。这样的动词有expect,hope,learn,lie,live,look,rain,sleep,sit,snow,stand,stay,study,teach,wait,want,work等。
how long have you learnt english?你学习英语多久了?
how long have you been learning english?(译文同上。)
he has slept for ten hours、他已经睡了十个小时了。
he h【www、xiezuowen、net】as been sleeping for ten hours、(译文同上。)
it has snowed for a long time、雪下了好长时间了。
it has been snowing for a long time、(译文同上。)
没有进行式的动词不可能有这样的用法,即现在完成进行时不能代替以下例句中的现在完成时:
they’ve always had a big garden、他们一直有一座大花园。
how long have you known that?你知道这事多久了?
he’s been in hospital since his accident、他从发生事故之后,一直在医院里。
注意:现在完成进行时可以和时间短语连用,也可以不连用,这一点就有别于现在完成时,因为后者与像for six days,since june,never等一些时间短语连用才能表示这类动作。不用这些时间状语时,现在完成时指的是完成了的一个动作。
b 用现在完成时表示的反复的动作,有时可以作为连续的动作用现在完成进行时表示:
i’ve written six letters since breakfast、早饭后我已经写了六封信。
i’ve been writing letters since breakfast、早饭后我一直在写信。
i have knocked five times、i don’t think anyone’s in、
我敲了五次门。我想屋里没有人。
i’ve been knocking、i don’t think anybody’s in、
我一直在敲门。我想屋里没有人。
注意:现在完成进行时表示一种看来似乎是不间断的动作,所以提到做一件事的次数或一共做了多少事情时,不能用现在完成进行时。
c 用现在完成时表达的单一动作和用现在完成进行时表达的动作是有区别的:
(a)i’ve polished the car、我擦了车。意指这件事已经结束了。
(b) i’ve been polishing the car、我在擦车来着。
意指过去一小时我就是这样度过的,而不一定指动作已结束。注意:用现在完成进行时表示单一动作时,这一动作持续到说话的时间或者接近这一时间为止:
he’s been taking photos、
他一直在拍照。(他大概手里正拿着照相机。)
a、凡是"完成时态"都表示,不知道也不管动作发生的具体时间,所以在使用现在完成时的句子里,不可以带有表示具体过去时间的状语,如:yesterday,lastweek(month,year,etc、),twoweeksago,in1999等;
但常和有些副词连用,如:just,before,already,often,never,ever,not…yet,always等等。
b、在以when提问的特殊疑问中不能用现在完成时。另外,ago不能用于现在完成时的句子里,因为它表示从现在算起的以前某个时间,属于表示具体过去时间的状语。但是可以用before来表示"以前"的意义,因为它只表示"以前",而不知什么时候的以前。
c、如果是不表示连续性的动词用于现在完成时的句子,不可以和以for表示的"一段时间"的状语连用。在这种情况下,应该用"ithasbeen…;since…"的句式来表达。如:
hehasjoinedthearmyforfiveyears、(错误)
ithasbeenfiveyearssincehejoinedthearmy。(正确)
hehastakenphotos、
他拍过相片。(这件事可能是也可能不是最近发生的。)
5、 i have heard nothing from him up to now、到目前为止我没有他的任何消息。
havent met since then、自那以后我们再没见过。
your father gone to america? 你的父亲去过美国吗?
has skated for five 已经滑冰五个小时了。
9、i have read a book these days、这几天我一直在看一本书。
you had your lunch yet?你已经吃过午饭了吗?
上一篇:魔法棒(精选9篇)
下一篇:田径运动会通讯稿(精选5篇)
热门推荐