Giới thiệu bạn mới – Nhận quà tới 7 triệu

Banner website workshop AI

60+ bài tập về các thì quá khứ trong tiếng Anh có đáp án

Cố vấn học thuật

GV. Nguyễn Huy Hoàng - Overall

GV tại IELTS Vietop.

Bạn đã từng gặp tình huống đang làm bài thì phân vân giữa ‘was doing’ và ‘had done’? Dù đã học về các thì quá khứ trong tiếng Anh, nhưng đến khi luyện tập thực tế lại dễ nhầm lẫn giữa cách chia động từ, cấu trúc và dấu hiệu nhận biết.

Là một người từng ôn luyện thi IELTS và cả TOEIC, mình hiểu cảm giác “chắc là đúng rồi” nhưng vẫn sai khi làm bài tập ngữ pháp – đặc biệt với các thì quá khứ. Chính vì vậy, mình đã tổng hợp bộ bài tập thực hành kèm lời giải chi tiết dưới đây, giúp bạn không chỉ nhớ được cấu trúc mà còn hiểu bản chất từng thì để dùng đúng lúc, đúng ngữ cảnh.

Bây giờ, cùng bắt đầu chinh phục bài tập về các thì quá khứ trong tiếng Anh nào!

1. Tóm tắt lý thuyết các thì quá khứ trong tiếng Anh

Kiến thức trọng tâm
1. Quá khứ đơn (Past Simple)
* Cấu trúc:
– Khẳng định: S + V2/ed
– Phủ định: S + did not + V (nguyên mẫu)
– Nghi vấn: Did + S + V (nguyên mẫu)?
* Cách dùng:
– Diễn tả hành động đã xảy ra và kết thúc trong quá khứ.
– Chuỗi hành động xảy ra liên tiếp trong quá khứ.
* Dấu hiệu nhận biết:
yesterday, last week, in 2010, ago, when…
E.g.:
– She visited Da Nang last summer. (Cô ấy đã đến Đà Nẵng mùa hè năm ngoái.)
– I didn’t go to the party yesterday. (Tôi đã không đi dự tiệc hôm qua.)
2. Quá khứ tiếp diễn (Past Continuous)
* Cấu trúc:

– Khẳng định: S + was/were + V-ing
– Phủ định: S + was/were + not + V-ing
– Nghi vấn: Was/Were + S + V-ing?
* Cách dùng:
– Diễn tả hành động đang xảy ra tại một thời điểm xác định trong quá khứ.
– Hai hành động xảy ra đồng thời trong quá khứ.
* Dấu hiệu nhận biết:
while, when, at 5 p.m. yesterday, at that time,…
E.g.:
– Ethan and Emily were reading a book at 8 p.m. last night. (Ethan và Emily đang đọc sách lúc 8 giờ tối qua.)
– Rose and Sophia were watching TV while Tom was studying. (Rose và Sophia đang xem TV trong khi Tom đang học.)
3. Quá khứ hoàn thành (Past Perfect)
* Cấu trúc:

– Khẳng định: S + had + V3/ed
– Phủ định: S + had not + V3/ed
– Nghi vấn: Had + S + V3/ed?
* Cách dùng:
– Diễn tả hành động đã hoàn thành trước một thời điểm hoặc một hành động khác trong quá khứ.
* Dấu hiệu nhận biết:
before, after, by the time, already, just, when…
E.g.:
– Olivia had left before James arrived. (Olivia đã rời đi trước khi James đến.)
– Lisa and Mary had finished dinner when John came. (Lisa và Mary đã ăn xong khi John đến.)
4. Quá khứ hoàn thành tiếp diễn (Past Perfect Continuous)
* Cấu trúc:

– Khẳng định: S + had been + V-ing
– Phủ định: S + had not been + V-ing
– Nghi vấn: Had + S + been + V-ing?
* Cách dùng:
– Nhấn mạnh tính liên tục của hành động kéo dài đến một thời điểm hoặc hành động khác trong quá khứ.
* Dấu hiệu nhận biết:
for, since, before, all day, the whole morning,…
E.g.:
– He had been working all day before he took a break. (Anh ấy đã làm việc cả ngày trước khi nghỉ ngơi.)
– We had been studying for two hours when the power went out. (Chúng tôi đã học được hai tiếng khi bị mất điện.)
Tóm tắt lý thuyết các thì quá khứ trong tiếng Anh
Tóm tắt lý thuyết các thì quá khứ trong tiếng Anh

Thực hành thêm các bài tập sau:

2. Bài tập về các thì quá khứ trong tiếng Anh

Cùng mình thực hành các bài tập về các thì quá khứ trong tiếng Anh từ cơ bản đến nâng cao với đa dạng các bài tập được chọn lựa kỹ lưỡng giúp bạn ôn tập hiệu quả.

Bài tập 1: Chia động từ trong ngoặc thì quá khứ đơn

1. Alice (travel) to Paris last summer.

2. Tom and Jerry (not go) to school yesterday.

3. I (see) a beautiful bird this morning.

4. She (not call) me last night.

5. (you/finish) your homework yesterday?

6. My grandparents (live) in Hue when they were young.

7. We (not have) any classes last Friday.

8. Peter (buy) a new phone two days ago.

9. (they/watch) the movie last weekend?

10. It (rain) heavily yesterday afternoon.

Đáp ánGiải thích chi tiết
1. traveledDấu hiệu ‘last summer’ cho biết hành động đã xảy ra và kết thúc trong quá khứ. Ta dùng thì quá khứ đơn. Chủ ngữ là ‘Alice’ (số ít) và động từ ‘travel’ là có quy tắc nên thêm -ed → ‘traveled’.
2. did not go‘Yesterday’ là dấu hiệu chỉ thời gian quá khứ. Câu phủ định thì quá khứ đơn dùng ‘did not’ + động từ nguyên mẫu. ‘Go’ là nguyên mẫu nên ta dùng: ‘did not go’.
3. saw‘This morning’ đã kết thúc (giả sử thời điểm hiện tại là buổi chiều) → dùng quá khứ đơn. ‘See’ là động từ bất quy tắc, quá khứ của ‘see’ là ‘saw’.
4. did not callCâu phủ định trong quá khứ đơn → dùng ‘did not’ + V nguyên mẫu. ‘Call’ là động từ có quy tắc, không chia thêm gì sau ‘did not’.
5. Did you finishCâu hỏi trong thì quá khứ đơn: Đảo ‘Did’ lên đầu → ‘Did you’. Động từ ‘finish’ giữ nguyên vì sau ‘Did’ không chia động từ.
6. lived‘When they were young’ là một mệnh đề quá khứ. Ta dùng quá khứ đơn cho hành động ‘sống’ trong giai đoạn đó. Động từ có quy tắc ‘live’ → ‘lived’.
7. did not have‘Last Friday’ là dấu hiệu của thì quá khứ đơn. Dạng phủ định: ‘did not’ + động từ nguyên mẫu. ‘Have’ giữ nguyên.
8. bought‘Two days ago’ → quá khứ đơn. Động từ ‘buy’ là bất quy tắc, quá khứ của nó là ‘bought’.
9. Did they watchCâu hỏi trong quá khứ đơn → đảo ‘Did’ lên đầu. Sau ‘Did’, động từ ‘watch’ giữ nguyên.
10. rained‘Yesterday afternoon’ → hành động đã hoàn tất → quá khứ đơn. Động từ có quy tắc ‘rain’ thêm -ed → ‘rained’.

Bài tập 2: Chia động từ thì quá khứ tiếp diễn

1. She ______ (cook) dinner at 6 p.m. yesterday.

2. What ______ you ______ (do) at 9 last night?

3. They ______ (not/sleep) when the earthquake happened.

4. I ______ (read) a book while my brother ______ (play) video games.

5. ______ it ______ (rain) when you left the house?

6. We ______ (not/watch) TV at that time.

7. Tom and Jerry ______ (argue) over the phone during the meeting.

8. While Emma ______ (drive), she ______ (listen) to music.

9. My parents ______ (have) lunch when I called.

10. ______ you ______ (study) when I texted you?

Đáp ánGiải thích chi tiết
1. was cooking‘At 6 p.m. yesterday’ là một thời điểm cụ thể trong quá khứ → dùng quá khứ tiếp diễn. Chủ ngữ ‘She’ → dùng ‘was’ + V-ing → ‘was cooking’.
2. were you doing‘At 9 last night’ là thời điểm cụ thể → quá khứ tiếp diễn. Câu hỏi nên đảo ‘were’ lên trước → ‘Were you doing’.
3. were not sleeping‘When the earthquake happened’ là một hành động chen vào một hành động đang diễn ra → dùng quá khứ tiếp diễn. Phủ định → ‘were not sleeping’.
4. was reading / was playingHai hành động song song trong quá khứ → đều dùng quá khứ tiếp diễn. ‘I’ → ‘was reading’, ‘my brother’ → ‘was playing’.
5. was it rainingCâu hỏi với ‘it’ làm chủ ngữ → đảo ‘was’ lên trước. Dấu hiệu ‘when you left’ → hành động đang diễn ra → ‘was it raining’.
6. were not watching‘At that time’ → quá khứ tiếp diễn. Chủ ngữ ‘we’ → ‘were’, phủ định → ‘were not watching’.
7. were arguing‘During the meeting’ → hành động đang diễn ra → quá khứ tiếp diễn. Chủ ngữ số nhiều ‘Tom and Jerry’ → ‘were arguing’.
8. was driving / was listeningHai hành động đồng thời trong quá khứ → quá khứ tiếp diễn. ‘Emma’ → ‘was driving’, ‘she’ → ‘was listening’.
9. were havingHành động đang xảy ra → quá khứ tiếp diễn. ‘My parents’ là số nhiều → dùng ‘were’ + V-ing → ‘were having’.
10. were you studying‘When I texted you’ → hành động chen vào → quá khứ tiếp diễn. Câu hỏi → đảo ‘were’ lên đầu → ‘were you studying’.

Bài tập 3: Chia động từ thì quá khứ hoàn thành

1. She ______ (leave) the house before it started raining.

2. We ______ (finish) the project when the deadline came.

3. I ______ (never/see) such a beautiful place before that trip.

4. He ______ (go) to bed when I got home.

5. The film ______ (already/start) when we arrived.

6. They ______ (not/do) their homework before class began.

7. Had you ______ (eat) before you left the restaurant?

8. The baby ______ (cry) a lot before the doctor came.

9. We ______ (not/decide) what to do before she called.

10. You ______ (not/meet) her until yesterday, right?

Đáp ánGiải thích chi tiết
1. had left‘Before it started raining’ → hành động ‘rời đi’ xảy ra trước hành động khác trong quá khứ → dùng thì quá khứ hoàn thành → ‘had left’.
2. had finishedHành động ‘hoàn thành’ xảy ra trước mốc thời gian ‘deadline’ → quá khứ hoàn thành → ‘had finished’.
3. had never seen‘Before that trip’ là mốc → chưa từng thấy → quá khứ hoàn thành → ‘had never seen’.
4. had gone‘He went to bed’ trước khi tôi về nhà → quá khứ hoàn thành → ‘had gone’.
5. had already started‘Already’ là dấu hiệu → dùng quá khứ hoàn thành → ‘had already started’.
6. had not done‘Before class began’ → hành động xảy ra trước → quá khứ hoàn thành phủ định → ‘had not done’.
7. eatenCâu hỏi quá khứ hoàn thành → cần dùng ‘Had you eaten’ → ‘eaten’ là V3.
8. had cried‘Before the doctor came’ → hành động xảy ra trước → quá khứ hoàn thành → ‘had cried’.
9. had not decided‘Before she called’ → hành động ‘chưa quyết định’ xảy ra trước → dùng quá khứ hoàn thành → ‘had not decided’.
10. had not met‘Until yesterday’ → chưa từng gặp trước đó → quá khứ hoàn thành phủ định → ‘had not met’.

Bài tập 4: Chia động từ thì quá khứ hoàn thành tiếp diễn

1. He ______ (run) for 30 minutes when it started to rain.

2. They ______ (argue) for hours before they agreed.

3. I ______ (study) all night before the exam began.

4. She ______ (not/sleep) well for days before seeing the doctor.

5. How long ______ they ______ (work) before the break?

6. We ______ (not/talk) to each other for weeks before the party.

7. My mom ______ (clean) the house for 2 hours before the guests arrived.

8. The teacher ______ (teach) for 15 years before retiring.

9. He ______ (not/exercise) for months before getting sick.

10. What ______ you ______ (do) before I arrived?

Đáp ánGiải thích chi tiết
1. had been running‘For 30 minutes’ → hành động kéo dài → dùng thì quá khứ hoàn thành tiếp diễn → ‘had been running’.
2. had been arguing‘For hours’ → quá khứ hoàn thành tiếp diễn nhấn mạnh thời gian → ‘had been arguing’.
3. had been studying‘All night’ → hành động dài liên tục → quá khứ hoàn thành tiếp diễn → ‘had been studying’.
4. had not been sleeping‘For days’ + phủ định → dùng quá khứ hoàn thành tiếp diễn → ‘had not been sleeping’.
5. had they been workingCâu hỏi với ‘How long’ → đảo ‘had’ lên trước → ‘had they been working’.
6. had not been talkingHành động kéo dài và bị ngắt trước quá khứ → quá khứ hoàn thành tiếp diễn → ‘had not been talking’.
7. had been cleaning‘For 2 hours’ → hành động kéo dài → quá khứ hoàn thành tiếp diễn → ‘had been cleaning’.
8. had been teaching‘For 15 years’ trước khi nghỉ hưu → dùng quá khứ hoàn thành tiếp diễn → ‘had been teaching’.
9. had not been exercising‘For months’ + phủ định → quá khứ hoàn thành tiếp diễn → ‘had not been exercising’.
10. had you been doingCâu hỏi quá khứ hoàn thành tiếp diễn → ‘had you been doing’.

Bài tập 5: Chọn đáp án đúng

1. When I got to the station, the train (left / had left).

2. While we (watched / were watching) the movie, the power went out.

3. She (was cooking / had cooked) dinner before they arrived.

4. They (played / had been playing) tennis for hours before taking a break.

5. He (had finished / finished) his meal before the phone rang.

6. I (was reading / read) a book when I heard the noise.

7. She (wrote / was writing) a letter when I walked in.

8. By the time I arrived, they (left / had left).

9. He (was working / worked) there for 5 years before moving.

10. I (had been studying / studied) English before moving to Canada.

11. We (were playing / had played) when it started raining.

12. My brother (had done / was doing) his homework when I got home.

13. They (were traveling / had been traveling) for 12 hours before reaching Hanoi.

14. I (had eaten / ate) before going to the gym.

15. She (had not met / didn’t meet) him until yesterday.

Đáp ánGiải thích chi tiết
1. had leftHành động ‘rời đi’ xảy ra trước khi tôi đến → quá khứ hoàn thành.
2. were watchingHành động đang xảy ra thì hành động khác chen vào → quá khứ tiếp diễn.
3. had cookedNấu ăn hoàn tất trước khi họ đến → quá khứ hoàn thành.
4. had been playingHành động chơi kéo dài trước khi nghỉ → quá khứ hoàn thành tiếp diễn.
5. had finishedHoàn tất bữa ăn trước khi chuông reo → quá khứ hoàn thành.
6. was readingHành động đang diễn ra bị chen ngang → quá khứ tiếp diễn.
7. was writingHành động đang viết thì bị chen ngang → quá khứ tiếp diễn.
8. had leftHọ đã rời đi trước khi tôi đến → quá khứ hoàn thành.
9. had been workingHành động kéo dài trước khi chuyển việc → quá khứ hoàn thành tiếp diễn.
10. had been studyingHọc trước khi chuyển sang Canada → quá khứ hoàn thành tiếp diễn.
11. were playingHành động đang chơi thì mưa → quá khứ tiếp diễn.
12. had doneLàm bài xong trước khi tôi về → quá khứ hoàn thành.
13. had been travelingĐi liên tục trước khi tới nơi → quá khứ hoàn thành tiếp diễn.
14. had eatenĂn xong rồi mới đi tập → quá khứ hoàn thành.
15. had not metChưa từng gặp trước đó → quá khứ hoàn thành phủ định.

Bài tập 6: Chia động từ phù hợp để hoàn thành câu

1. Tom ______ (work) at the company for 10 years before he quit.

2. He ______ (not/feel) well for weeks before seeing a doctor.

3. When I arrived, they ______ (discuss) the project for an hour.

4. She ______ (already/leave) when I got there.

5. I ______ (read) when my phone rang.

6. By the time the police came, the thief ______ (escape).

7. They ______ (study) for hours before the exam started.

8. We ______ (not/talk) for months before we met again.

9. Had you ______ (finish) your meal before you left?

10. What ______ you ______ (do) before you called me?

Đáp ánGiải thích chi tiết
1. had worked‘For 10 years before he quit’ → hành động kéo dài trước quá khứ → quá khứ hoàn thành.
2. had not feltKhông khỏe trong một thời gian trước → quá khứ hoàn thành phủ định.
3. had been discussingĐang bàn luận liên tục trước khi tôi đến → quá khứ hoàn thành tiếp diễn.
4. had already leftCô ấy đã rời đi trước khi tôi đến → quá khứ hoàn thành.
5. was readingĐang đọc thì điện thoại reo → quá khứ tiếp diễn.
6. had escapedThoát trước khi cảnh sát đến → quá khứ hoàn thành.
7. had been studyingHọc suốt trước kỳ thi → quá khứ hoàn thành tiếp diễn.
8. had not been talkingKhông nói chuyện suốt thời gian dài → quá khứ hoàn thành tiếp diễn phủ định.
9. finishedDùng trong câu nghi vấn: ‘Had you finished…?’ → V3 là ‘finished’.
10. had you been doingCâu hỏi hành động kéo dài trước quá khứ → quá khứ hoàn thành tiếp diễn.

3. Kết luận

Việc sử dụng đúng các thì quá khứ trong tiếng Anh không chỉ giúp bạn làm tốt bài tập ngữ pháp mà còn phản ánh khả năng tư duy mạch lạc khi kể lại một câu chuyện, mô tả trải nghiệm hoặc trình bày một chuỗi sự kiện.

Tuy nhiên, không ít bạn vẫn nhầm lẫn giữa quá khứ đơn và quá khứ hoàn thành, hoặc quên mất dạng tiếp diễn khi nói về hành động đang xảy ra trong quá khứ. Bí quyết ở đây là luyện tập đa dạng dạng bài tập về các thì quá khứ, kết hợp quan sát kỹ dấu hiệu thời gian và logic ngữ nghĩa trong câu.

Nếu bạn thấy phần nào chưa chắc chắn, hãy để lại câu hỏi trong bình luận – đội ngũ giáo viên của chúng mình luôn sẵn sàng giải đáp! Ngoài ra, bạn cũng có thể khám phá thêm nhiều chủ đề thú vị khác trong chuyên mục Tiếng Anh THCS & THPT để học ngày càng hiệu quả hơn!

Ngọc Hương

Content Writer

Tôi hiện là Content Writer tại công ty TNHH Anh ngữ Vietop – Trung tâm đào tạo và luyện thi IELTS tại TP.HCM. Với hơn 3 năm kinh nghiệm trong việc sáng tạo nội dung học thuật, tôi luôn không ngừng nghiên cứu và phát triển những nội dung chất lượng về tiếng Anh, IELTS …

Bạn còn thắc mắc về kiến thức này?

Hãy để lại bình luận, đội ngũ biên tập viên và cố vấn học thuật của Vietop English sẽ giải đáp & giúp bạn hiểu sâu hơn về chủ đề này 😍.

Bình luận


The reCAPTCHA verification period has expired. Please reload the page.

Chương trình đôi bạn cùng tiến

Chinh phục tiếng Anh cùng Vietop

Hơn 21.220+ học viên đã đạt chứng chỉ tiếng Anh quốc tế, tự tin giao tiếp và mở rộng cơ hội học tập – nghề nghiệp. Đăng ký ngay để không bỏ lỡ cơ hội!

Vui lòng nhập tên của bạn
Số điện thoại của bạn không đúng

Thời gian bạn muốn nhận tư vấn:

Sáng:
09h - 10h
10h - 11h
11h - 12h
Chiều:
14h - 15h
15h - 16h
16h - 17h
Tối:
17h - 19h
19h - 20h
20h - 21h