现在完成时精讲和练习(附答案)一、现在完成时的六种常用情景:(一)表示过去发生或已经完成的动作对现在造成的影响或结果,1、Thecarhasarrived。车子来了。(对现在结果的影响是:车子已在门口)2、Someonehasbrokenthewindow.有人把窗户打破了。(对现在结果的影响是:窗户仍破着)3、It’ssodark。Someonehasturnedoffthelight.这里很黑,有人刚把灯关了。(对现在结果的影响是:现在很黑)4、Areyoufree?Ihavefinishedmyhomework.Iamfree.你有空吗?我已经做完了家庭作业。我有空。(我已经完成了家庭作业,对现在影响是:很有空)。(二)表示过去已经开始,一直延续到现在的动作或状态。一般会和表示从过去某一时刻延续到现在(包括“现在”在内)的一段时间的状语连用。如for+时间段、since+过去的时间点、疑问词howlong等。这时表示持续动作或状态的动词必须是延续性动词。1、Myunclehasworkedatthisfactoryforfiveyears。我叔叔在这个工厂工作已经五年了。2、Mr.BlackhaslivedinChinasince2002。自从2002年Mr.Black一直住在中国。3、Howlonghaveyoubeenhere?你来这里多久了?4、IhavelearntEnglishformorethantenyears。我已经学了10多年的英语。(从10年前开始,持续到现在)5、Shehasswumsincehalfanhourago。我已经游泳了半个小时。(半个小时前开始,到现在还在游)(三)经验性用法:表示从过去开始到目前为止这段时间中反复发生的动作或多次出现的状态。常与频度副词如often、always、everyweek、twice(三次、n次)等连用。1、IhavebeentotheSummerPalacetwice。我曾经去过颐和园两次。2、Hehasalwayssaidso。他总是这么说.(四)表示人曾有过或到目前为止从未有过的经历.1、HaveyoueverbeentotheSummerPalace?你曾去过颐和园吗?2、Ihaveneverhadacar.我从未有过汽车。(五)现在完成时还常与句型Thisisthefirsttime…,It’sthefirsttime…连用。Thisisthefirsttimehehasdrivenacar.这是他第一次开车。(六)现在完成时和最高级连用表示到现在为止是最…的。It’sthemostboringfilmI’veeverseen.这是我看过的最令人厌烦的电影。二.现在完成时的语法结构过去现在将来(一)肯定式:主语+助动词(have/has)+动词的过去分词。(二)否定式:否定式直接在助动词后面加上not。主语+助动词否定形式(have/has+not)+动词的过去分词。havenot,hasnot的缩略式分别为haven't,hasn't。另外若是肯定句改成否定句时,若有some、already时,要分别改成any,yet。有时not可以用never代替,表示“从来没有”的意思。例句如下:1、Wehaveneverspokentoaforeigner.我们从来没有和外国人说过话。2、Ihaveneverseenhimbefore.以前我从来没有见过他。(三)一般疑问式:疑问式是把助动词提到主语之前。助动词(Have/Has)+主语+动词的过去分词。肯定回答Yes,主语+助动词(Have/Has)否定回答No,主语+助动词否定形式(have/has+not)。有时也可以用No,notyet。No,never。No,notevenonce。陈述句改成一般疑问句时,把陈述句中的have或has放到句首,句末打问号,同时把句中的some,already改为any,yet就构成了一般疑问句(四)否定疑问式:把助动词+not提到主语之前助动词(Have/Has)+主语+not+动词的过去分词。助动词(Have/Has)n't+主语+动词的过去分词。否定疑问式简单回答(肯定/否定)HaveInot(Haven’tI)studied…?Yes,youhave.No,youhaven’t.Haveyounot(Haven’tyou)studied…?Yes,Ihave.No,Ihaven’t.Hashenot(Hasn’the)studied…?Yes,hehas.No,hehasn’t.(五)特殊疑问句:特殊疑问词+助动词(Have/Has)+主语+动词过去分词。(六)助动词have有人称和数的变化。第三人称单数has,其余用have。(七)例句:1、Hashegonetothelibrary?他是去了图书馆吗?Yes,hehas.是的,他去那里了。No,hehasn’t.不,他没去那里。2、HowlonghasMrsSmithbeeninBeijing?Smith夫人来北京多长时间了?三、现在完成时的标志词(一)当句中有never(从来没有),ever(曾经),just(刚刚),already(肯定),yet(否定),before(以前),recently(近来),sofar(到目前为止),inthepast/lastfewYears(在过去几年里)、uptonow(直到现在)等时,常用现在完成时。1、already往往用于肯定句,用在疑问句时表示强调或加强语气。yet用于否定句和疑问句。yet在否定句中有“还”之意。(1)Hehasalreadylefthere。他已经离开这里了。(2)Hashealreadylefthere?他(真的)已经离开这里了吗?(表示加强语气)(3)Myteachershaven’thadbreakfastyet。我的老师们还没有吃早饭。(4)Haveyouwrittentoyourparentsyet?你已经给你父母写过信了吗?2、never是否定词,表示“从来没有”,表示全部否定。而ever表示“曾经”,多见于疑问句或否定句中。(这个用法还需要在考证。)(1)WehaveneverbeentotheGreatWall。我们从来没有去过长城。(2)HaveyoueverbeentoCanada?你们曾经去过加拿大吗?(3)Haveyoueverseenthefilm?No.Ihaveneverseenit你曾经看过这部影片吗?没有,从来没看过。(4)Nobodyinourclasshaseverbeenthere。我们班没有人去过那。3、just表示“刚刚”,用于完成时态时,与already,never等副词的位置一样,多用在助动词have/has和动词过去分词之间。(1)Hehasjustcomeback。他刚刚回来。(2)Theyhavejustfinishedthework。他们刚刚完成那项工作。(3)Thetrainhasjustarrived。火车刚到。4、inthepastfewyears意思是“过去几年来”,可作现在完成时的时间状语;inthepast意思是“在过去”,常作一般过去时的时间状语。(1)Greatchangeshavetakenplaceinmyhometowninthepastfewyears.过去几年来,我的家乡发生了很大的变化。(2)Wheredidyouworkinthepast?你过去在哪里工作?5、lately,recently是完成时的时间状语,justnow有amomentago之意,是一般过去时的时间状语。(1)DidyouseeJoanjustnow?你刚才看到琼了吗?(2)Haveyouheardfromyourfamilylately/recently?你最近收到家人的来信了吗?6、evensincethen与fromthenon(afterthat)都有“打那以后”之意,前者是完成时的时间状语,后者常用作一般过去时的时间状语。(1)She’slivedhereeversincethen。打那以后,她一直住在这。(2)Ididn’thearofJimfromthenon/afterthat。打那以后,我就没有吉姆的消息。7、before泛指“以前”时,可用于现在完成时中;ago表示“现在的一段时间以前”,是一般过去时的时间状语。(1)I’veneverbeentoJapanbefore。我以前没去过日本。(2)ShewenttoJapanayearago她一年前去了日本。8、sofar(到目前为止),thesedays(这些天)也是现在完成时常见的时间状语。(1)Sofar,nomanhastravelledfartherthanthemoon.到目前为止,还没有人到月球以外旅行。(2)Whathaveyoudonethesedays?这些天来,你做了什么事?9、now,today,thismorning,thisyear等有时可以用现在完成时中,以表示到说话时这一时间尚未结束。(1)Ihavelearnedhowtoswimnow。我现在终于学会了怎样游泳。(2)HaveyouseenHanMeimeithismorning?你今天上午看到韩梅梅了吗?(二)当句中有for+段时间或since+点时间等时,主句常用现在完成时,谓语动词必须是延续性动词,若是非延续性动词,要改为延续性动词或表状态的词(短语)。1、for+一段时间(1)Ihavebeenherefor5weeks。我已经在这里五个星期了。(2)He’sstudiedEnglishfor3years。他学习英语已经三年了。2、since+表示过去某一时间的)时间点它的三种用法是:(1)since+(过去的月份/年份)。Ihavebeenheresince2000.我从2000年以来一直在这里。(2)since+一段时间+ago。Ihavebeenheresince5yearsago.我从五年前就在这里。(3)since+一般过去时从句。IhavebeenheresinceIgraduatedin2000.我从2000年毕业就一直在这里。3、短暂性动词与延续动词间的转换短暂性动词在肯定句、疑问句中不能与时间段连用,这些动词是:become,begin,buy,borrow,arrive,come,die,fall,finish,gettoknow,go,join,leave,marry等。为了表述这种意思,我们常用相应的延续性动词have,keep等或短语“be+名词(形容词、位置副词、介词短语)”来代替短暂性动词。arrive(at/in)--be(in/at)become→bebegin→haveborrow→keepbuy→havecome(go,arrive,get)→behere/there/in…close--becloseddie→bedeadfallasleep(ill)→beasleep(ill)finish→beoverget(to)--be(in/at)gettoknow→know,join→bein或者beamemberof…leave→beaway(from…),marry→bemarried等reach--be(in/at)return--bebackstart/begin--beonopen--beopen也可以仍用原短暂性动词,用句型“Itis…since从句(从句中用一般过去时)”或用“一般过去时+…ago”这一结构来表述延续性的动作或状态。(1)他入党五年了。HehasbeeninthePartyforfiveyears.HehasbeenaPartymemberforfiveyears.ItisfiveyearssincehejoinedtheParty.HejoinedthePartyfiveyearsago.(2)电影开始五分钟了。Thefilmhasbeenon