このページでできること
プリントの内容を事前に確認できます
→ 初級・中級・まとめの3つのレベルのサンプル画像を掲載しています。
PDF形式のプリントを無料でダウンロードできます
→ A4サイズで印刷しやすく、すぐに授業や家庭学習に使えます。
プリントの答えと、ていねいな解説を掲載しています
→ 生徒にもわかりやすいように、文法のポイントをやさしく説明しています。
関連ページを紹介しています
→ あわせて学習すると理解が深まる、おすすめページへのリンクもあります。
プリント配布
「中3英語|現在完了形〈継続用法〉」

対象学年 | :中3 |
プリントの種類 | :文法のパターンプラクティス(初級・中級・まとめ) |
学習ポイント | :現在完了形〈継続用法〉の仕組みを理解するためのトレーニングです。 |
ほしいプリントの画像を選ぶと、サンプル画像が表示されます。
PDF形式のプリントは、赤いボタンからダウンロードできます。
印刷してご利用いただけます。(印刷サイズA4推奨)
問題
解答



解説

一部の解答・解説は、折りたたみ式になっています。
必要な問題だけ開いて確認できます。見たい問題をタップしてください。
現在完了形〈継続用法〉【初級】
現在完了形〈継続用法〉の肯定文・疑問文・否定文の形と意味を理解できるようになります。
1 ( )内から適する語を選んで○で囲みなさい。
① I have lived in America ( for ・since ) five years. 【訳】私は5年間アメリカに住んでいます。
A I have lived in America ( for ) five years.
「five years」は「5年間」という期間なので、forが正解です。
「for + 期間」で「〜の間ずっと〜している」を表します。
② Yuri has lived in China ( for ・since ) 2020. 【訳】ユリは2020 年から中国に住んでいます。
A Yuri has lived in China ( since ) 2020.
「2020」は起点(スタートの年)なので、sinceを使います。
「since + 過去の時点」が基本ルールです。
③ He has worked at this company ( for ・since ) three years. 【訳】彼はこの会社で3年間働いています。
A He has worked at this company ( for ) three years.
「three years」は具体的な期間なので、ここでもforを選びましょう。
- ④ We’ve known each other ( for ・since ) we were ten. 【訳】私たちは10歳の時からお互いを知っています。
- A
We’ve known each other ( since ) we were ten.
「we were ten」は過去の時点を表す節なので、sinceを使います。
主語+動詞で「いつから」の内容を詳しく言うときは since が自然です。
- ⑤ Have you played the piano ( for ・since ) three years old? 【訳】3歳の時からピアノを弾いているんですか?
- A
Have you played the piano ( since ) three years old?
「three years old」は「3歳の時」→時点なので、sinceが正しいです。
- ⑥ ― Yes, I ( have ・yet ). 【訳】(⑤に対して)はい、そうです。
- A
― Yes, I ( have ).
肯定文に yet は使いません。
ここは単純に Yes, I have. が自然な答えになります。
- ⑦ ― No, I ( never ・haven’t ). 【訳】(⑤に対して)いいえ、違います。
- A
― No, I ( haven’t ).
否定の答えは haven’t を選びます。
never は「一度も〜ない」という経験の用法向けです。
- ⑧ How ( long ・much ) have they played soccer together? 【訳】彼らはどれくらい長く一緒にサッカーをしているの?
- A
How ( long ) have they played soccer together?
「どれくらいの期間」は How long がぴったりです。
「How much」は数量や金額のときに使います。
- ⑨ I haven’t spoken in Spanish ( for ・since ) a long time. 【訳】ぼくは長い間スペイン語を話していません。
- A
I haven’t spoken in Spanish ( for ) a long time.
「a long time」は期間なので、forが正解です。
「for a long time(長い間)」は定番表現です。
- ⑩ She hasn’t eaten anything ( for ・since ) last night. 【訳】彼女は昨晩から何も食べていないんです。
- A
She hasn’t eaten anything ( since ) last night.
「last night」は時点(いつ)を示すので、ここではsinceを使います。
2 ( )に適する語を書きなさい。1つの( )内に入る語数は1つです。
現在完了形〈継続用法〉を使った自然な英文を書く力がつきます。
① I ( )( ) English ( ) twenty years. 【訳】私は20年間ずっと英語を教えています。
A I ( have )( taught ) English ( for ) twenty years.
「have+過去分詞(taught)」で現在完了を作り、「for twenty years」で継続の期間を表します。
② She ( )( ) a headache ( ) yesterday. 【訳】彼女は昨日から頭が痛いんだって。
A She ( has )( had ) a headache ( since ) yesterday.
「has had」は「持ち続けている」の現在完了形。
「since yesterday」で「昨日から」という起点を表しています。
③ It ( )( ) rainy ( ) last weekend. 【訳】先週末からずっと雨が降っています。
A It ( has )( been ) rainy ( since ) last weekend.
「It has been〜」で天候の継続を表し、「since last weekend」で起点を示します。
- ④ They ( )( ) busy ( ) three days. 【訳】彼らは3日前から忙しそうです。
- A
They ( have )( been ) busy ( for ) three days.
「have been busy」で「忙しい状態が続いている」ことを表します。
「for three days」で継続の期間を補います。
- ⑤ ( )( ) have you ( ) that actor? 【訳】君はどれくらいの間その俳優のことが好きなの?
- A
( How )( long ) have you ( liked ) that actor?
「How long」で「どれくらいの間?」と尋ね、現在完了の have liked を使っています。
- ⑥ ― ( ) fifteen years. 【訳】(⑤に対して)15年間です。
- A
― ( For ) fifteen years.
⑤に対する答えで、「15年間ずっと」という意味です。for+期間のパターンです。
- ⑦ ( )( ) have you ( ) in Japan? 【訳】いつから日本に住んでいるの?
- A
( How )( long ) have you ( lived ) in Japan?
「住み続けている」状態を聞いているので、have lived を使います。
「How long」で期間を尋ねる文です。
- ⑧ ― ( ) I was born. 【訳】(⑦に対して)生まれた時からです。
- A
― ( Since ) I was born.
⑦の答えで、「生まれてからずっと」→ 過去の時点を表すので since を使います。
- ⑨ We ( )( ) her ( )Wednesday. 【訳】私たちは彼女を水曜日から見かけていません。
- A
We ( haven’t )( seen ) her ( since )Wednesday.
現在完了の否定「haven’t seen(ずっと会っていない)」と、「since+時点」の使い方がポイントです。
- ⑩ Kaito ( )( ) any books ( )( ). 【訳】カイトは数年間、本を読んでいません。
- A
Kaito ( hasn’t )( read ) any books ( for )( years ).
「hasn’t read」で「読んでいない状態が続いている」、for years(何年も)が期間を表しています。
現在完了形〈継続用法〉【中級】
1 日本語の意味になるように、( )内の語句を並べかえなさい。
正しい語順で英文を組み立てる力がつきます。
① 私は30年間、医者として働いています。 ( have / as a doctor / worked / thirty years / I / for /. )
A I have worked as a doctor for thirty years.
この文では、「働いてきた」という継続の意味を出すために 現在完了(have worked) を使います。
for thirty years で「30年間ずっと」の期間を表します。
- ② 日本は1998年からずっとワールドカップに出場しています。 ( since / has / taken part in / 1998 / Japan / the World Cup / . )
- A
Japan has taken part in the World Cup since 1998.
has taken part in は「参加し続けている」の現在完了形です。
since 1998 は始まりの時点を示します。
- ③ 彼はいつから仕事を休んでいるの? ( he / how long / been / has / absent from / ? )
- A
How long has he been absent from work?
「どのくらい〜しているか」の継続疑問文なので、How long が適切です。
has been absent で「欠席が続いている」状態を表します。
- ④ どのくらいの間、犬を飼っているんですか? ( had a dog / how long / you / have / ? )
- A
How long have you had a dog?
犬を「飼っている状態」は動作ではなく 状態動詞の have を使って現在完了にします。
疑問形の have you had の語順も重要です。
- ⑤ 自分のパソコンが壊れた時からずっと使っていません。 ( since / used my computer / have / I / it was broken / not / . )
- A
I have not used my computer since it was broken.
have not used で「使っていない状態が続いている」ことを表現します。
起点として since it was broken が自然です。
2 次の日本語の文を英語の文に書きかえなさい。
現在完了形〈継続用法〉を使って、自分の言いたいことを英語で表現できる力がつきます。
① マーク(Mark)は8年間、福岡に住んでいます。
A Mark has lived in Fukuoka for eight years.
「住み続けている」は 現在完了(has lived) を使って表します。
for eight years で「〜の間」を表すことも押さえましょう。
- ② 私たちは3歳の頃からの友達です。
- A
We have been friends since we were three.
have been friends は関係が続いていることを示します。
時点の導入には since が最適です。
- ③ あなたはいつからその本に興味があるんですか?
- A
How long have you been interested in that book?
「興味がある」は be interested in〜 という表現を使います。
「How long」で「どれくらい前から〜?」と期間をたずねます。
- ④ エリ(Eri)はどれくらい前から野球ファンなの?
- A
How long has Eri been a baseball fan?
has been で「ずっと〜である」状態を表します。
How long で期間をたずねることも忘れずに。
- ⑤ 私は数年間、ハワイを訪れていません。
- A
I have not visited Hawaii for years. ( 短縮形:I haven’t visited Hawaii for years. )
have not visited で「訪れていないことが続いている」状態を表しています。
for years は「何年も(の間)」という便利な表現です。
現在完了形〈継続用法〉【まとめ】
1 次の対話文を読んで、あとの問いに答えなさい。
Saki: Hello. Are you a new teacher here?
Mr. Green: Yes. I’m Mark Green from Australia. Nice to meet you.
Saki: I’m Saki. Nice to meet you, too. What subject do you ①teach?
Mr. Green: I teach English. I also help students from overseas.
Saki: When did you start working as a teacher?
Mr. Green: I started ②it fifteen years ago. I started my career in Australia, and I’ve ③continue it since then.
Saki: I see. By the way, how long have you ④live in Japan?
Mr. Green: For twelve years.
Saki: Wow, that’s so long!
英語の対話文を正しく読んで理解する力が身につきます。
- 本文の日本語訳
Josh: やあ、アユミ。どうしたの?
Ayumi: やあ、ジョシュ。気分がよくないの。たぶん風邪をひいたかも。
Josh: それは大変だね。顔が青白いよ。今すぐ保健室に行ったほうがいいよ。
Ayumi: うん。でも、一人で行くのはつらいの。連れて行ってくれる?
Josh: もちろん。
Ayumi: ありがとう。次の特別英語授業に出られないのが悲しいの。
Josh: ずっと楽しみにしてたの、知ってるよ。
Ayumi: うん。英語話者から英語の話し方を学ぶのは、私にとって役立つことなの。
Josh: きっとまたチャンスがあるよ。
- (1) 下線部①③④の動詞について、適切な形に直して書きなさい。直す必要がない場合は、そのままの形で書きなさい。
- A
① teach ③ continued ④ lived
① teach
この動詞はすでに正しい現在形なので、形を変える必要はありません。
Mr. Green の自己紹介に対応しています。③ continued
過去の出来事を語っている文なので、過去形 continued が正解です。
「それ以来ずっと続けてきた」と自然に接続されます。④ lived
現在まで住んでいる場合は have lived などの現在完了形にする必要があります。
- (2) 下線部②のit は何を指していますか。本文中から英語で抜き出しなさい。
- A
working as a teacher
it は直前の文にある “working as a teacher”(教師として働くこと) を指しています。
抽象的な活動を指す it の使い方です。
- (3) 次の英語の質問に、3語以上の英語で答えなさい。
① How long has Mr. Green worked as a teacher?
② How long did Mr. Green work as a teacher in Australia? - A
① He has worked as a teacher for fifteen years.
② He worked as a teacher for three years in Australia.
① He has worked as a teacher for fifteen years.
Mr. Green has worked as a teacher for fifteen years なので、He has worked as a teacher for fifteen years. が正答です。② He worked as a teacher for three years in Australia.
オーストラリアでの勤務は「日本に来る前」で、3年間という情報により、He worked as a teacher for three years in Australia. となります。
過去の期間には 過去形 worked を使います。
2 次の日本語の文を英語の文に書きかえなさい。
現在完了形〈継続用法〉を使って、自分の言いたいことを英語で表現できる力がつきます。
① ぼくは初めて君に会った時からずっと君のことを愛しているよ。
A I have loved you since I first met you. ( 短縮形:I’ve loved you since I first met you. )
「〜以来ずっと愛している」は、現在完了形の love + since で表現します。
since I first met you が「出会ったときからずっと」のニュアンスを表します。
- ② 彼はそのペンを長い間使っています。
- A
He has used the pen for a long time. ( 短縮形:He’s used the pen for a long time. )
この文では、have/has + 過去分詞(used) で「使い続けている」状態を表します。
for a long time は「長い間」の定番表現です。
- ③ あなたはいつからバイオリンを弾いているの?
- A
How long have you played the violin?
「どのくらいの間〜しているの?」と聞くときは、How long + 現在完了形 を使います。
「バイオリンを弾くこと」が継続している動作として捉えられています。
- ④ 私たちは10年間、すしを食べていません。
- A
We have not eaten sushi for ten years. ( 短縮形:We haven’t eaten sushi for ten years. )
have not eaten は「10年間ずっと食べていない」経験の不在を表します。
for ten years で期間を明確にしています。