中3 英語「現在完了」無料学習プリント(答えつき)
学年・組 名前 点
- 日本文に合うように、[ ]内の語を1語で適切な形にかえて空所に入れなさい。
私たちは10年間この町に住んでいます。
We have ( ) in this town for ten years. [live] - 日本文に合うように、[ ]内の語を1語で適切な形にかえて空所に入れなさい。
私は小学生のころから彼女を知っています。
I have ( ) her since I was an elementary school student. [know] - 日本文に合うように、[ ]内の語を1語で適切な形にかえて空所に入れなさい。
母は今朝からずっといそがしい。
My mother has ( ) busy since this morning. [be] - 次の英文の( )に入る最も適切なものを選びなさい。
I have played the piano ( ) I was six.
ア for イ since ウ from エ ago - 次の英文の( )に入る最も適切なものを選びなさい。
Ken has been in Canada ( ) two weeks.
ア since イ ago ウ at エ for - 次の英文の( )に入る最も適切なものを選びなさい。
My sister ( ) lived in Kobe for three years.
ア have イ is ウ has エ was - 「私たちは長い間友達です」を正しく表している英文を選びなさい。
ア We are friends since a long time. イ We have been friends for a long time. ウ We were friends for a long time. エ We have friends for a long time. - 日本文に合うように、空所に適する語を入れなさい。
祖父はこの店で40年間働いています。
My grandfather has worked at this shop ( ) forty years. - 日本文に合うように、空所に適する語を入れなさい。
私たちは長い間ここに住んでいます。
We have lived here for a ( ) time. - 日本文に合うように、次の語を並べかえて英文を作りなさい。
私は2018年からここに住んでいます。
(2018 / since / here / have / I / lived). - 2つの文がほぼ同じ内容になるように、空所に適する語を入れなさい。
I came to this town four years ago. I still live here.
I ( ) in this town for four years. - 2つの文がほぼ同じ内容になるように、空所に適する語を入れなさい。
Emi got sick yesterday. She is still sick.
Emi ( ) since yesterday. - 日本文に合うように、次の語を並べかえて英文を作りなさい。
父は2015年からここで働いています。
(father / since / My / has / here / 2015 / worked). - 日本文に合うように、次の語を並べかえて英文を作りなさい。
私たちは長い間友達です。
(friends / have / long / been / for / time / a / We). - 次の会話の( )に入る最も適切なものを選びなさい。
A: ( )
B: For about ten years. My father bought it for me when I was five.
ア How many pianos do you have? イ When did you buy this piano? ウ How often do you play the piano? エ How long have you had this piano? - 2つの文がほぼ同じ内容になるように、空所に適する語を入れなさい。
This is my first visit to Kyoto.
I ( ) to Kyoto before. - 2つの文がほぼ同じ内容になるように、空所に適する語を入れなさい。
I went to Australia last year. I went there again this summer.
I ( ) Australia twice. - 日本文に合うように、次の語を並べかえて英文を作りなさい。
あなたは今までに着物を着たことがありますか。
(Have / a / you / ever / worn / kimono)? - 日本文に合うように、次の語を並べかえて英文を作りなさい。
私はこんなに美しい花を見たことがありません。
(such / seen / have / beautiful / flowers / I / never). - 次の英文のうち、誤りをふくむものを選びなさい。
ア I have been to Osaka twice. イ Have you ever played golf? ウ I have ever seen the movie. エ She has never eaten natto.
答えと解説
- lived 現在完了は〈have+過去分詞〉。live は規則動詞なので lived。
- known know - knew - known と変化する。know は状態を表す動詞なので、継続は現在完了で表す。
- been be動詞の過去分詞は been。has been busy で「ずっといそがしい」という状態の継続。
- イ since のあとには「始まった時点」が入り、I was six のような文も続けられる。from は現在完了の継続にはふつう使わない。
- エ two weeks は期間の長さなので for。ago は「〜前に」で、過去形の文で使う。
- ウ 主語が3人称単数(my sister)なので has。I / you / 複数の主語なら have。
- イ 「(ずっと)〜である」は have been 〜。for a long time で「長い間」。
- for forty years は期間の長さなので for。for a long time(長い間)もいっしょに覚えよう。
- long for a long time で「長い間」。現在完了の継続の文でよく使う表現。
- I have lived here since 2018. 〈have+過去分詞〉のあとに here、最後に since 2018 を置く。here の前に in はつけない。
- have lived 「4年前に来て今も住んでいる」は、現在完了の継続で「4年間住んでいる」と表せる。
- has been sick 「昨日から今までずっと具合が悪い」は has been sick。yesterday は始まった時点なので since。
- My father has worked here since 2015. 主語が My father なので has。since 2015 は文の最後に置く。
- We have been friends for a long time. have been friends で「(ずっと)友達である」。for a long time は文末。
- エ For about ten years.(約10年間)と期間で答えているので How long 〜? の質問。When 〜? なら時点で答える。
- have never been 「今回が初めての京都訪問」=「以前に一度も京都に来たことがない」。have never been to 〜 を使う。
- have been to 2回行った経験を have been to 〜 twice で表す。last year のような過去の時点は現在完了の文には入れない。
- Have you ever worn a kimono? wear - wore - worn と変化する。ever は過去分詞の前に置く。
- I have never seen such beautiful flowers. 〈such+形容詞+名詞〉で「こんなに〜な…」。never と組み合わせて感動を表す。
- ウ ever(今までに)はふつう疑問文で使い、肯定文には入れない。肯定文なら before や once などを使う。