【高校英語】完了形(過去完了・未来完了)の練習問題!無料プリントつき

完了形の練習問題 英語

高校生向けに完了形の無料で使える練習問題を用意しました。

現在完了、過去完了、未来完了の問題が全94問あります。

時制の使い分けが理解できる問題がたくさんあるので、定期テスト対策や日常の学習、復習などにおすすめです。

解説動画も併せてご覧ください。

この記事は広告を含んでいます。

時制の練習問題はこちらです。

完了形の解説動画

完了形の練習問題

現在完了と過去形の練習問題

1,次の括弧内の動詞を適切な形に書き換え、英文すべてを書いてください。

□1ジムは3日間学校を欠席しています。
Jim ( is ) absent from school for three days.
□2実は日本に来たのはこれが初めてです。
Actually, this is the first time I ( visit ) Japan.
□3私は去年入院しました。
I ( am ) in hospital last year.
□4私は去年から入院しています。
I ( am ) in hospital since last year.
□5私たちは5年間知り合いです。
We ( know ) each other for five years.
□6私たちが知り合いになって5年になります。
It ( is ) five years since we ( know ) each other.
□7私たちが知り合いになって5年が経ちます。
Five years ( pass ) since we ( know ) each other.
□8彼は子供の時3年間深圳に住んでいた。
He ( live ) in Shenzhen for three years when he ( is ) a child.
□9ここ3年私は海外に行っていません。
I ( am ) abroad for the last three years.
□10 彼女はたった今帰宅しました。
She (go ) home just now.

 

2,次の空欄に適切な語句を入れ、英文すべてを書いてください。

□1昨夜から雨が降っています。
It (         )(           )(             ) since last night.
□2あなたは最近トムに会いましたか。
(          ) you (            ) Tom (              )?
□3あなたは願書を送りましたか。いいえ、まだです。( I haven’t 以外で)
Have you sent the application?  No, (           )(             ).
□4いつあなたは宿題を終えましたか。
When (            ) you (            ) the homework?
□5彼のビジネスは今のところ順調です。
His business (           )(            ) successful (            )(              ).
□6あなたはどのくらい寝ていたのですか。
How (            )(            ) you (             )(               )?
□7YOASOBIが最近新しいアルバムをリリースしました。( release )
YOASOBI (             ) recently (                ) their new album.
□8彼が宿題を忘れたのはこれで5回目です。
This is the fifth time he (             )(              ) his homework.
□9阿倍野はここ10年ですっかり変わった。
Abeno (          )(             ) a lot for the (              ) ten years.
□10 彼女は子供の時3年間ピアノを練習しました。
She (              ) the piano for three years when she (             ) a child.

 

3,次の語句を並び替えて、正しい英文を完成させてください。ただし1語不足しています。

□1父が死んで5年が過ぎました。
( my father / passed / since / died / five years ).
□2彼は20年間この会社で働いています。
( twenty years / he / for / this company / been / has / for ).
□3最近テレビでそのお笑い芸人を見ない。
( the comedian / on TV / seen / I / haven’t ).
□4彼女は2日間寝ずにずっとマンガを描いています。
( drawing / two days / she’s / comics / without sleeping / for ).
□5私たちが結婚して10年になります。
( ten years / married / it / since / we / been / got ).
□6私たちがサルミアッキを食べるのはこれで3回目です。
( we / time / is / eaten / this / third / salmiakki / have / the ).
□7彼女は子供のとき手術を受けました。
( surgery / she / was / had / she / a child ).
□8彼はここ1週間部活をサボっています。
( the / has / the club / he / last / for / skipped / week ).
□9あなたはジェットコースターに乗ったことがありますか。いいえ、ありません。
( No, / you / I / a roller / ridden / never / coaster / ? / have ).
□10 彼女はこれまでにワーク(問題集)の半分を終わらせました。
( workbook / so / she’s / half / the / finished / of ).

 

4,次の日本語を英語に直してください。

□1私は長い間その最新の( latest )ゲーム機が欲しいと思っていました。
□2彼はどこかに財布をなくしました。
□3彼は今朝からゲームばかりしている。
□4私たちが英語を学んで7年になります。
□5彼女は今までテストのために一夜漬け( cram all night )をしたことがありません。

 

過去完了と未来完了の練習問題

1,次の括弧内の動詞を適切な形に書き換え、英文すべてを書いてください。

□1彼が駅に着いた時、列車はもう出発していました。
The train already ( leave ) when he ( arrive ) at the station.
□2彼女がその賞を取った時、彼女は小説を3冊書いていました。
She ( write ) three novels when she ( win ) the award.
□3私はその本を読むまで難民問題について聞いたことがありませんでした。
I never ( hear ) of the refugee issue until I ( read ) the book.
□4私が祖父を尋ねたとき彼は病気で一週間寝ていました。
My grandpa ( is ) sick in bed for a week when I ( visit ) him.
□5私は自転車のサドルをなくしました。私はそれをその前の日に買っていました。
I ( lose ) the seat of my bicycle. I ( buy ) it the day before.
□6来週の月曜日までにはレポートを書いているでしょう。
By next Monday, I ( write ) the report.
□7もう一度富士山を登ると、私は3回行ったことになる。
I ( am ) to Mt. Fuji three times if I ( climb ) it again.
□8彼は来年の4月で8年間この学校で教えたことになる。
He ( teach ) at this school for eight years next April.
□9私はこの本を読んだらすぐにあなたに返します。
I ( return ) the book to you as soon as I ( read ) it.
□10 私たちがパーティーを開くころまでに、桜の花は散っているでしょう。
By the time we ( have ) a party, the cherry blossoms ( fall ).

 

2,次の空欄に適切な語句を入れ、英文すべてを書いてください。

□1ケンは足首をねんざしたので試合に出られませんでした。
Ken (      ) play in the game because he (      )(              ) his ankle.
□2授業が始まったとき、彼女たちは昼食を食べ終えていませんでした。
When the class (            ), they (            ) not (               ) lunch.
□3彼女はグアムに行くまで外国に行ったことがありませんでした。
She (           ) never (              ) abroad (               ) she went to Guam.
□4私はあなたのメッセージを受け取ったとき、雪の中1時間半も待っていました。
I (            )(            )(             ) for you in the snow for half an hour (             ) I got your message.
□5私はソファーで寝てしまったのに気づいた。
I (              ) that I (             )(             ) asleep on the sofa.
□6イルカショーは3時までには終わっているでしょう。
The dolphin show (             )(              ) ended (            ) three o’clock.
□7もしこのツアーに参加すれば、私はこの城を2回訪れたことになります。
I (          )(            )(             ) the castle if I (             ) the tour.
□8昼食を食べたら、あなたに電話します。
(           )(             )(            ) lunch, I will call you.
□9機長がシートベルトサインを消すまで座っていてください。
Please (            ) seated (            ) the captain (             )(              ) off the seat belt sign.
□10 息子が来週の土曜日までに元気になっていれば、私たちはキャンプに行きます。
If my son (           )(            ) well by next Saturday, we will go camping.

 

3,次の語句を並び替えて、正しい英文を完成させてください。ただし1語不要です。

□1私はTim のところに立ち寄りましたが、彼はもう家を出ていました。
( on / Tim, / already / his house / I / has / left / called / he / but / had ).
□2私はしんちゃんの声が変わったのを知りませんでした。
( changed / that / Shin-chan’s voice / didn’t / I / hadn’t / know / had ).
□3彼女がまどかを救ったのは10回目でした。
( was / has / she / the tenth / it / Madoka / saved / time / had ).
□4彼は千葉に引っ越す前、南極に8年間住んでいました。
( lived / South Pole / been / moved / had / for / he / before / Chiba / in / he / eight years / to ).
□5彼らは明日までにそのニュースを聞いているでしょう。
( the news / heard / they / have / by / will / been / tomorrow ).
□6あなたか来るころまでには課題を終わらせているでしょう。
( by the / I’ll / you / the assignment / finish / come / time / have finished ).
□7彼らは来月で結婚して1年になります。
( married / got / they’ll / next month / a year / have / for / been ).
□8すべての客が9時までに到着していれば、私たちは時間通り式典を始めます。
( if / all / the ceremony / by nine / start / the guests / will / arrived / on time / have / we’ll ).

 

4,次の日本語を英語に直しなさい。

□1私たちがホールに到着したとき、コンサートは始まっていました。
□2彼は子供のとき、パリに3年間住んでいました。
□3雨が降り出すまで、私たちは3時間ずっとテニスをしていました。
□4彼は来年で大阪に住んで10年になります。
□5あなたが彼女にプロポーズするまでに彼女は別の男性と結婚しているでしょう。

 

完了形まとめの練習問題

1,次の空欄に入る適切な語句を選択してください。ただし完了形ではない問題もあります。

□1彼が帰宅したとき、家族はもう夕食を食べていました。
When he came home, his family (             ) dinner.
1 were already eating   2 have already eaten   3 had already eaten   4 already ate
□2彼が子供のとき、3年間ブラジルに住んでいました。
He (            ) in Brazil for three years when he was a child.
1 had lived   2 lived    3 has lived    4 was living
□3私が彼を尋ねたとき、彼はゲームをしていました。
When I called on him, he (             ) game.
1 had played  2 played   3 was playing    4 had been playing
□4あなたが電話をする前、彼女はあなたを2時間待っていました。
She (            ) for you for two hours before you called her.
1 was waiting   2 had waited    3 had been waiting    4 had been waited
□5父はその研究所で20年間働いています。
My father (            ) for the lab for 20 years.
1 is working  2 has worked   3 had worked   4 has been working
□6私は最近トムブラウンをテレビで見ていません。
I (            ) Tom Brown on TV these days.
1 haven’t seen   2 didn’t see  3 don’t see  4 wasn’t seeing
□7来月で彼が亡くなって10年になります。
He (            ) away for ten years next month.
1 has passed  2 will be passing   3 will have passed   4 passes
□8私は明日の今ごろ追試を受けているでしょう。
I (          ) a make-up test at this time tomorrow.
1 will have taken   2 will be taking  3 am going to take   4 will take
□9もし部屋の掃除が終わったら、あなたを手伝います。
If I (            ) the room, I will help you.
1 clean    2 will have cleaned   3 have cleaned   4 will clean
□10 彼は今少しずつ回復しています。
He (          ) well little by little now.
1 has gotten  2 is getting   3 gets   4 has been getting

 

2,次の空欄に入る適切な語句を選択してください。

□1I (          ) his daughter since she was born.
1 knew  2 know   3 have known   4 had known
□2Can I ask you to lend me the magazine when you (          ) reading it?
1 finished  2 have finished  3 will finish  4 will have finished
□3When he wanted to withdraw some money from the bank, but he found he (          ) his bank card.
1 lost  2 have lost  3 had lost  4 was losing
□4Have you had dinner yet?  Yes, I (           ) at seven o’clock.
1 have eaten   2 ate   3 have had    4 will have
□5Three years (            ) since my grandfather died.
1 have passed   2 has been  3 is   4 have been dead
□6I (          ) the assignment by two o’clock tomorrow.
1 completed   2 have completed   3 had completed   4 will have completed
□7I realized that I (           ) the important conference.
1 missed   2 have missed   3 was missing   4 had missed
□8It (           ) twenty years since the three banks merged.
1 has been  2 has passed   3 will have passed   4 had passed
□9The airplane (           ) off when we got to the airport.
1 have already taken   2 already took    3 was already taking   4 had already taken
□10 when he retires, Professor Wiles (            ) here for over thirty years.
1 have been teaching  2 will have been teaching   3 will be teaching   4 will have taught

 

3,次の語句を並び替えて、正しい英文を完成させてください。

□1I still ( the cold / recovered from / I / haven’t / caught ) last week.
□2He ( been / a month / in / for / will / the hospital / have )by the end of this week.
□3Kate ( before / in Singapore / five years / lived / came / had / for / she ) to Japan.
□4It ( been / before / day / has / raining / since / the ) yesterday.

 

4,次の英文を日本語に訳してください。

□1They had been dating for two months, and Joe had always paid for their dates, but tonight was different. He said to his girlfriend, “Could you pay for me this time?”
□2Fewer hours of sunshine affected sales of summer goods last year, but they are hoping that demand for these goods will rise this year. *demand: 需要

 

完了形の問題プリント

このページの問題プリントが、無料ダウンロードできます。

学校の勉強だけじゃ受験が不安な人に、「コーチング」がおすすめ!


  • オンラインなので全国どこでも対応可能
  • 難関大学に強い

完了形の解答

現在完了と過去形の解答

1,動詞の書き換え

1 Jim has been absent from school for three days.   *be absent from: に欠席している
2 Actually, this is the first time I have visited Japan.
3 I was in hospital last year.  last year など過去の1点だけを指すときは、過去形です。
4 I have been in hospital since last year.
5 We have known each other for five years.
6 It has been( is ) five years since we knew each other.
7 Five years have passed since we knew each other.   5から6,7の書き換えはよく出ます!
8 He lived in Shenzhen for three years when he was a child.
when は未来でない限り、現在完了を使いません。
過去完了を使うなら、子供のときより以前の内容に限られます。
9 I have not been abroad for the last three years.  ここ3年は、the last を入れます。
10 She went home just now.  just now は過去だけです。

2,穴埋め

1 It has been raining since last night.
2 Have you met( seen ) Tom lately ( recently )?
3 No, not yet.
4 When did you finish the homework?
5 His business has been successful so far.
6 How long have you been sleeping?
7 YOASOBI have recently released their new album.
8 This is the fifth time he has forgotten his homework.
9 Abeno has changed a lot for the last ten years.
10 She practiced the piano for three years when she was a child.

3,並び替え

1 Five years have passed since my father died.
2 He has been working for the company for twenty years.
3 I haven’t seen the comedian on TV lately ( recently ).
4 She’s been drawing comics without sleeping for two days.
5 It has been ten years since we got married.
6 This is the third time we have eaten salmiakki.
7 She had surgery when she was a child.
8 He has skipped the club since the last week.
9 Have you ridden a roller coaster? No, I never have. * I have never. とは言いません。
10 She’s finished half of the workbook so far.

4,英作文

1 I have wanted the latest game machine for a long time.
2 He has lost his wallet somewhere.
3 He has been playing video game since this morning.
4 We have learned English for seven years.
= Seven years have passed since we learned English.
= It has been seven years since we learn English.
5 She has never crammed all night for a test until now ( up to now ).
so far: その状態が今まで続いている until now ( up to now ): 今までから変化があった

高校英語が本当に苦手、という人はこちらがおすすめ!

過去完了と未来完了の解答

1,動詞の書き換え

1 The train had already left when he arrived at the station. より古い方を過去完了にする。
2 She had written three novels when she won the award.
3 I had never heard of the refugee issue until I read the book.
4 My grandpa had been sick in bed for a week when I visited him.
5 I lost the seat of my bicycle. I had bought it the day before.
6 By next Monday, I will have written the report.
7 I will have been to Mt. Fuji three times if I climb it again. If の後は will を入れない!
8 He will have taught at this school for eight years next April.
9 I will return the book to you as soon as I have read it.  as soon as の後もwill を入れない!
10 By the time we have a party, the cherry blossoms will have fallen. by the time の後もwill を入れない!

2,穴埋め

1 Ken couldn’t paly in the game because he had twisted his ankle.
2 When the class began, they had not finished lunch.
3 She had never been abroad when she went to Guam.
4 I had been waiting for you in the snow for half an hour when I got your message.
5 I found that I had fallen asleep on the sofa.
6 The dolphin show will have ended by three o’clock.
7 I will have visited the castle if I join the tour.
8 When I’ve eaten lunch, I will call you.
9 Please remain seated until the captain has turned off the seat belt sign.
10 If my son has gotten well by next Saturday, we will go camping.

3,並び替え

1 I called on Tim, but he had already left his house.
2 I didn’t know that Shin-chan’s voice had changed.
3 It was the tenth time she had saved Madoka.
4 He had lived in South Pole for eight years before he moved to Chiba.
5 They will have heard the news by tomorrow.
6 I’ll have finished the assignment by the time you come.
7 They’ll have got( been ) married for a year next month.
8 we’ll start the ceremony on time if all the guests have arrived by nine.

4,英作文

1 When we arrived at the hall, the concert had started ( begun ).
2 When he was a child, he lived in Paris for three years.
3 We’d been playing tennis for three hours when it began raining.
4 He will have lived in Osaka for ten years next year.
5 By the time you propose to her, she will have married another man.
propose: 提案する、という意味もあります

 

学校の授業がわからない人におすすめ!

完了形まとめの解答

1,選択

1 When he came home, his family had already eaten dinner. 3
帰宅より食べたのが古いからです。
2 He lived in Brazil for three years when he was a child. 2
子供だった時と住んでいた時は、同じ時間です。
3 When I called on him, he was playing game. 3
動作に時間の幅がある方は、進行形にします。過去完了だと彼はゲームを終わったことになります。
when の文で現在完了を使えるのは、未来のときだけです。
4 She had been waiting for you for two hours before you called her.
数時間やり続ける動作は、完了進行形で表します。明らかに電話より彼女が待っていた方が古い話です。
5 My father has worked for the lab for 20 years. 2, 4
has been working も正解です。
6 I don’t see Tom Brown on TV these days. 3
these days は現在形で好まれます。
7 He will have passed away for ten years next month. 3
next month があるので、未来完了を使います。pass away : 亡くなる
8 I will be taking a make-up test at this time tomorrow. 2
at this time があれば、未来進行形。未来進行形は意思と関係なくなりゆきでやることが決まっている動作。
未来完了は未来まで続く動作なので、追試をほぼ24時間受けていることになります。
9 If I have cleaned the room, I will help you. 3
if の後はwill を置けないので、現在形か現在完了です。掃除はまだ終わっていないので、現在完了が正解。
10 He is getting well little by little now. 2
回復しているのは、現在の状態なので現在進行形で表します。
まだ100%回復はしていないので、現在完了にできません。

2,選択

1私は生まれたときから彼の娘を知っています。3
2あなたが雑誌を読み終わったら、私に貸してくれませんか。2
3彼は銀行からお金を引き出したかったが、キャッシュカードをなくしたのに気づいた。3
4あなたはもう夕食を食べましたか。はい、7時に食べました。2
5祖父が死んでから3年が経ちます。1
6明日の2時までに私は課題を完成させているでしょう。4 assignment : 課題 complete: 完成させる
7私は大事な会議を欠席したことに気が付いた。4 miss: 寂しく思う、逃す、欠席する
83つの銀行が合併して20年になります。1
9私たちが空港に着いた時、飛行機はもう離陸していました。4
10 彼が引退するとき、ワイルズ教授は30年以上ここで教えたことになります。2

3,並び替え

1 I still haven’t recovered from the cold I caught last week.
私はまだ先週ひいたかぜから回復していません。
2 He will have been in the hospital for a month by the end of this week.
彼は今週末で入院して1か月になります。
3 Kate had lived in Singapore for five years before she came to Japan.
ケイトは日本に来る前シンガポールに5年間住んでいました。
4 It has been raining since the day before yesterday.
おとといから雨が降り続いています。

4,和訳

1彼らはデートをして2か月で、ジョーがいつもデート代を支払っていましたが、今夜は違いました。彼は彼の女友達に言いました。「今回は私の代わりに支払ってくれませんか」pay for : ~代を支払う
2去年日照時間が少ないことが夏用商品の販売に影響しましたが、彼らは今年これらの商品の需要が高まることを望んでいます。fewer : より少ない sale: 販売、特売

時制(前半部分)の練習問題はこちらです。

タイトルとURLをコピーしました