wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Khối 6 - C++ - Cấu trúc lặp

Total questions: 80

Worksheet time: 40mins

Name
Class
Date
1.

Cấu trúc lặp for thường được sử dụng khi nào?

a)

Khi không biết điều kiện dừng

b)

Khi biết trước số lần lặp

c)

Khi điều kiện luôn luôn đúng

d)

Khi lặp ít nhất một lần duy nhất

2.

Thành phần thứ hai trong ngoặc đơn của for là gì?

a)

Biến khởi tạo ban đầu

b)

Điều kiện để tiếp tục

c)

Bước nhảy của vòng lặp

d)

Khối lệnh thực thi chính

3.

Vòng lặp while phụ thuộc yếu tố nào?

a)

Số lượng phần tử mảng

b)

Một điều kiện logic cụ thể

c)

Bước nhảy của biến đếm

d)

Khai báo biến khởi tạo

4.

Đặc điểm quan trọng nhất của vòng lặp do...while là gì?

a)

Luôn kiểm tra điều kiện trước

b)

Thực hiện ít nhất một lần

c)

Chỉ lặp khi điều kiện sai

d)

Tốc độ thực thi rất chậm

5.

Vòng lặp nào kiểm tra điều kiện trước khi thực hiện khối lệnh?

a)

Vòng lặp do...while

b)

Vòng lặp while cơ bản

c)

Vòng lặp lồng nhau

d)

Vòng lặp không điều kiện

6.

Lệnh break có tác dụng gì trong vòng lặp?

a)

Bỏ qua lần lặp hiện tại

b)

Thoát khỏi vòng lặp ngay

c)

Quay lại bước khởi tạo

d)

Chạy tiếp đến khi dừng

7.

Lệnh continue thực hiện nhiệm vụ gì?

a)

Kết thúc toàn bộ vòng lặp

b)

Bỏ qua lần lặp hiện tại

c)

Xóa bỏ các biến khởi tạo

d)

Chờ điều kiện trở nên sai

8.

Cấu trúc for (int x : arr) được gọi là gì?

a)

For không có điều kiện

b)

For dựa trên phạm vi

c)

Vòng lặp while rút gọn

d)

Cấu trúc rẽ nhánh nâng

9.

Vòng lặp for dựa trên phạm vi xuất hiện từ chuẩn nào?

a)

Từ chuẩn C++ cũ (C++98)

b)

Từ chuẩn mới (C++11)

c)

Từ chuẩn C++17

d)

Từ khi C++ mới ra đời

10.

Trong vòng lặp for, thành phần "bước nhảy" dùng để làm gì?

a)

Kiểm tra tính đúng của điều kiện

b)

Thay đổi giá trị biến lặp

c)

Thoát chương trình lập trình

d)

Khai báo các biến cục bộ

11.

Vòng lặp nào kiểm tra điều kiện sau khi thực hiện khối lệnh?

a)

Vòng lặp for cơ bản

b)

Vòng lặp do...while

c)

Vòng lặp while logic

d)

Vòng lặp vô hạn định

12.

Cú pháp nào là của vòng lặp while?

a)

do { } while (dk);

b)

while (dieu_kien) { }

c)

for ( ; ; ) { }

d)

while { dieu_kien }

13.

Cấu trúc for (khởi_tạo; điều_kiện; bước_nhảy) thuộc loại nào?

a)

Vòng lặp logic đơn

b)

Vòng lặp for cơ bản

c)

Vòng lặp mảng liên kết

d)

Vòng lặp do...while

14.

Nếu điều kiện trong while sai ngay từ đầu, khối lệnh chạy mấy lần?

a)

Chạy duy nhất một lần

b)

Không chạy lần nào cả

c)

Chạy cho đến khi thoát

d)

Chạy vô hạn liên tục

15.

Nếu điều kiện trong do...while sai ngay từ đầu, khối lệnh chạy mấy lần?

a)

Không chạy lần nào cả

b)

Chạy duy nhất một lần

c)

Chạy vô hạn liên tục

d)

Chạy cho đến khi dừng

16.

Để duyệt qua các phần tử của một vector, ta có thể dùng?

a)

Lệnh switch-case cơ bản

b)

For dựa trên phạm vi

c)

Câu lệnh rẽ nhánh if

d)

Toán tử ba ngôi điều kiện

17.

Từ khóa nào dùng để thoát khỏi vòng lặp ngay lập tức?

a)

Từ khóa continue

b)

Từ khóa break

c)

Từ khóa return

d)

Từ khóa default

18.

Từ khóa nào dùng để chuyển sang lần lặp kế tiếp?

a)

Từ khóa break

b)

Từ khóa continue

c)

Từ khóa switch

d)

Từ khóa while

19.

Ví dụ for (int i = 1; i <= 5; i++) sẽ in ra bao nhiêu giá trị?

a)

Sáu giá trị liên tiếp

b)

Năm giá trị liên tiếp

c)

Bốn giá trị liên tiếp

d)

Một giá trị duy nhất

20.

Trong do { ... } while (dieu_kien);, dấu chấm phẩy đặt ở đâu?

a)

Sau từ khóa do

b)

Sau điều kiện lặp

c)

Sau khối lệnh lặp

d)

Không cần dấu này

21.

Mục đích của "khởi tạo biến" trong vòng lặp for là gì?

a)

Để kiểm tra điều kiện

b)

Để bắt đầu vòng lặp

c)

Để kết thúc khối lệnh

d)

Để thay đổi bước nhảy

22.

Vòng lặp while thường dùng khi nào?

a)

Khi biết rõ số lần lặp

b)

Số lần lặp không biết trước

c)

Khi không có điều kiện nào

d)

Khi cần in dữ liệu mảng

23.

Khối lệnh trong vòng lặp được tạo bởi cặp dấu nào?

a)

Cặp dấu ngoặc đơn ( )

b)

Cặp dấu ngoặc nhọn { }

c)

Cặp dấu ngoặc vuông [ ]

d)

Cặp dấu gạch chéo //

24.

Đoạn mã int n = 3; while (n > 0) { n--; } lặp mấy lần?

a)

Lặp hai lần duy nhất

b)

Lặp ba lần duy nhất

c)

Lặp bốn lần duy nhất

d)

Lặp một lần duy nhất

25.

Trong vòng lặp for, bước nhảy có thể là gì?

a)

Chỉ có thể là i++

b)

Mọi phép toán thay đổi

c)

Chỉ có thể là i--

d)

Không được để trống

26.

Thành phần nào trong for có thể để trống?

a)

Chỉ có khởi tạo biến

b)

Cả ba thành phần trên

c)

Chỉ có bước nhảy biến

d)

Chỉ có điều kiện lặp

27.

Vòng lặp vô hạn (true) sẽ tạo ra hiện tượng gì?

a)

Vòng lặp chạy một lần

b)

Vòng lặp vô hạn lần

c)

Vòng lặp không thực hiện

d)

Lỗi biên dịch hệ thống

28.

Range-based for loop có thể duyệt qua cấu trúc nào?

a)

Một biến số nguyên duy nhất

b)

Mảng hoặc container

c)

Một khối lệnh rẽ nhánh

d)

Một toán tử điều kiện

29.

Trong cú pháp for int x : arr\text{int x : arr} , x nhận giá trị gì?

a)

Địa chỉ của phần tử

b)

Giá trị từng phần tử

c)

Chỉ số của phần tử

d)

Kích thước của mảng

30.

Điều kiện lặp phải trả về kiểu dữ liệu nào?

a)

Kiểu số thực (double)

b)

Kiểu logic (boolean)

c)

Kiểu số nguyên (int)

d)

Kiểu chuỗi (string)

31.

Lệnh ++++ trong vòng lặp for thường được gọi là gì?

a)

Thành phần khởi tạo

b)

Thành phần bước nhảy

c)

Thành phần điều kiện

d)

Thành phần kết thúc

32.

Vòng lặp nào phù hợp để in danh sách sinh viên trong lớp?

a)

Lệnh switch-case

b)

Vòng lặp for cơ bản

c)

Toán tử ba ngôi

d)

Lệnh if rẽ nhánh

33.

Lệnh n ⁣ ⁣n\!\!- có tác dụng gì trong vòng lặp while (n > 0)\text{(n > 0)} ?

a)

Làm điều kiện luôn đúng

b)

Đưa điều kiện về sai

c)

Thoát vòng lặp lập tức

d)

Tăng giá trị biến n

34.

Vòng lặp nào đảm bảo thực hiện khối lệnh trước khi kiểm tra điều kiện?

a)

Vòng lặp while

b)

Vòng lặp do...while

c)

Vòng lặp for

d)

Vòng lặp range-for

35.

Trong ví dụ in số từ 1 đến 5, dùng vòng lặp nào?

a)

Dùng vòng lặp while

b)

Dùng vòng lặp for

c)

Dùng do...while

d)

Dùng range-based for

36.

Trong ví dụ lặp đến khi n=0n = 0 , sử dụng vòng lặp nào?

a)

Dùng vòng lặp for

b)

Dùng vòng lặp while

c)

Dùng do...while

d)

Dùng range-based for

37.

"Bỏ qua câu lệnh còn lại trong lần lặp" là mô tả của lệnh nào?

a)

Lệnh break

b)

Lệnh continue

c)

Lệnh default

d)

Lệnh return

38.

"Thoát khỏi vòng lặp ngay lập tức" là mô tả của lệnh nào?

a)

Lệnh continue

b)

Lệnh break

c)

Lệnh switch

d)

Lệnh else

39.

Đâu là một tên gọi khác của range-based for loop?

a)

Vòng lặp for vô tận

b)

For dựa trên phạm vi

c)

Vòng lặp không bước

d)

Vòng lặp while mảng

40.

Cho đoạn mã do { cout << i; i++; } while (i <= 0)\text{(i <= 0)} ; in ra gì nếu i=1i = 1 ?

a)

Không in ra gì

b)

In ra giá trị số 1

c)

In ra giá trị số 0

d)

In ra vô hạn số 1

41.

Trong cấu trúc for, thao tác nào được thực hiện đầu tiên?

a)

Kiểm tra điều kiện

b)

Khởi tạo biến

c)

Thực hiện bước nhảy

d)

Thực hiện khối lệnh

42.

Trong cấu trúc for, việc thực hiện bước nhảy xảy ra khi nào?

a)

Trước khi kiểm tra điều kiện

b)

Sau khi thực hiện khối lệnh

c)

Trước khi khởi tạo biến

d)

Ngay khi vòng lặp dừng

43.

C++11 cung cấp range-based for để làm việc với đối tượng nào?

a)

Các biến cục bộ đơn

b)

Container hoặc mảng

c)

Các cấu trúc rẽ nhánh

d)

Các hàm không giá trị trả về

44.

Nếu quên i ⁣ ⁣++i\!\!++ trong for (int i = 0; i < 10; )(\text{int i = 0; i < 10; }) , chuyện gì xảy ra?

a)

Vòng lặp không chạy

b)

Vòng lặp bị vô hạn

c)

Lỗi cú pháp biên dịch

d)

Vòng lặp chạy 10 lần

45.

Điều kiện của vòng lặp while (n > 0)\text{(n > 0)} đúng khi nào?

a)

Khi n là số dương

b)

Khi n=0n = 0

c)

Khi n lớn hơn 0

d)

Khi n bằng chính 1

46.

Cú pháp do { ... } while (điều kiện); khác với while ở điểm nào?

a)

Có thêm từ khóa do

b)

Điều kiện nằm ở cuối

c)

Không dùng ngoặc nhọn

d)

Tốc độ thực hiện chậm

47.

Trong for (int x : arr)(\text{int x : arr}) , arr có thể là gì?

a)

Một hằng số nguyên

b)

Một mảng các số hoặc container

c)

Một điều kiện logic

d)

Một hàm không giá trị

48.

Lệnh continue thường được dùng để làm gì trong vòng lặp?

a)

Dừng chương trình ngay

b)

Lọc dữ liệu lặp bằng cách bỏ qua bước hiện tại

c)

Thoát vòng lặp nhanh

d)

Khởi tạo lại biến đếm

49.

Lệnh break thường dùng trong trường hợp nào?

a)

Muốn lặp thêm lần nữa

b)

Tìm thấy kết quả sớm

c)

Bắt đầu lại từ đầu

d)

Điều kiện luôn luôn sai

50.

Tại sao cần i ⁣ ⁣++i\!\!++ trong vòng lặp for?

a)

Để khởi tạo lại biến

b)

Để tiến tới điểm dừng

c)

Để kiểm tra tính đúng

d)

Để in giá trị ra màn hình

51.

Với khai báo int arr[] = {10, 20, 30};\text{int arr[] = \{10, 20, 30\};} , range-based for sẽ lấy được gì?

a)

Địa chỉ ô nhớ mảng

b)

Giá trị 10, 20, 30

c)

Chỉ số 0, 1, 2 của mảng

d)

Tổng các giá trị mảng

52.

Vòng lặp nào ngắn gọn nhất để duyệt mảng trong C++11 trở lên?

a)

Vòng lặp while cơ bản

b)

For dựa trên phạm vi

c)

Vòng lặp do...while

d)

Vòng lặp for cổ điển

53.

Trong while (điều kiện), nếu điều kiện là 5>35 > 3 thì thế nào?

a)

Lặp lại một lần rồi dừng

b)

Lặp vô hạn luôn

c)

Không lặp lần nào cả

d)

Báo lỗi cú pháp ngay

54.

break và continue được gọi là các lệnh gì trong cấu trúc lặp?

a)

Lệnh khai báo biến

b)

Lệnh điều hướng lặp

c)

Lệnh tính toán số học

d)

Lệnh logic so sánh

55.

Có bao nhiêu loại cấu trúc lặp chính được đề cập trong tài liệu này (for, while, do...while, range-based for)?

a)

Có hai loại cấu trúc

b)

Có bốn loại cấu trúc

c)

Có ba loại cấu trúc

d)

Có năm loại cấu trúc

56.

Vòng lặp nào phù hợp nhất khi chưa biết rõ số lần thực hiện?

a)

Vòng lặp for mảng

b)

Vòng lặp while/do-while

c)

Vòng lặp rẽ nhánh if

d)

Vòng lặp lồng phức hợp

57.

Biến i trong for (int i=0; ...)\text{(int i=0; ...)} có phạm vi ở đâu?

a)

Toàn bộ chương trình

b)

Trong vòng lặp

c)

Ngoài vòng lặp

d)

Chỉ trong hàm main

58.

Điều kiện của do...while đặt trong dấu gì?

a)

Dấu ngoặc nhọn { }

b)

Dấu ngoặc đơn ( )

c)

Dấu ngoặc vuông [ ]

d)

Không dùng dấu ngoặc

59.

Cho ví dụ int n=3; while(n>0) cout<<n; n–; \text{int n=3; while(n>0){ cout<<n; n--; }} in ra gì?

a)

In ra chuỗi "1 2 3"

b)

In ra chuỗi "3 2 1"

c)

In ra chuỗi "3 3 3"

d)

In ra duy nhất số 0

60.

Câu lệnh break trong while giúp ích gì?

a)

Tăng số lần lặp lại

b)

Dừng lặp theo ý muốn

c)

Làm code chạy chậm lại

d)

Kiểm tra lỗi cú pháp

61.

Sự khác biệt logic giữa while và do...while là gì?

a)

while nhanh hơn do-while

b)

Thời điểm kiểm tra điều kiện

c)

Kiểu dữ liệu biến lặp

d)

Cách sử dụng bộ nhớ

62.

Trong for (  ;  )(\; ;\;) , nếu không có break thì sẽ xảy ra điều gì?

a)

Báo lỗi biên dịch ngay

b)

Chạy vô hạn lần lặp

c)

Không chạy lần nào cả

d)

Dừng sau một lần lặp

63.

Lệnh continue trong vòng lặp for sẽ nhảy đến bước nào?

a)

Bước khởi tạo biến i

b)

Bước thực hiện nhảy

c)

Bước kiểm tra điều kiện

d)

Thoát khỏi vòng lặp

64.

Range-based for có ưu điểm gì so với for truyền thống?

a)

Chạy nhanh hơn rất nhiều

b)

An toàn và ngắn gọn hơn

c)

Dùng được cho mọi biến

d)

Không cần dùng bộ nhớ

65.

Khi nào nên dùng break thay vì đặt điều kiện ở đầu vòng lặp?

a)

Khi muốn lặp nhiều lần

b)

Cần dừng lập tức

c)

Khi bước nhảy quá lớn

d)

Khi mảng có nhiều phần

66.

Điều gì xảy ra nếu điều kiện trong do...while luôn đúng?

a)

Thoát sau lần chạy đầu

b)

Vòng lặp chạy vô tận

c)

Chương trình báo lỗi

d)

Tự động dừng sau 100 lần

67.

Phép toán i++ và ++i trong for khác nhau như thế nào?

a)

i++ chạy nhanh hơn ++i

b)

Kết quả lặp vẫn giống

c)

++i làm vòng lặp vô hạn

d)

i++ chỉ dùng cho số âm

68.

Tại sao tài liệu nói do...while thực hiện ít nhất một lần?

a)

Do bước nhảy ở đầu tiên

b)

Lệnh chạy trước điều kiện

c)

Vì điều kiện luôn để trống

d)

Do khai báo biến đặc biệt

69.

Vòng lặp while lồng trong for tạo ra điều gì?

a)

Lỗi xung đột biến đếm

b)

Lặp đa tầng phức tạp

c)

Tăng tốc độ xử lý tin

d)

Giảm bộ nhớ máy tính

70.

Nếu dùng continue ngay trước ++i trong while, điều gì xảy ra?

a)

i vẫn tăng bình thường

b)

Bị lặp vô hạn biến i

c)

Vòng lặp dừng lập tức

d)

Số lần lặp giảm đi một

71.

Hai vòng lặp for (int i=0; i<10; i++)\text{for (int i=0; i<10; i++)}for (int i=1; i<=10; i++)\text{for (int i=1; i<=10; i++)} khác gì?

a)

Số lần lặp khác nhau

b)

Giá trị i trong lệnh khác nhau

c)

Cú pháp một câu sai

d)

Tốc độ thực hiện khác nhau

72.

Để duyệt ngược một mảng, cấu trúc nào là khó thực hiện nhất?

a)

Vòng lặp for có chỉ số

b)

For dựa trên phạm vi

c)

Vòng lặp while đơn

d)

Vòng lặp do...while

73.

break chỉ thoát khỏi vòng lặp nào nếu có nhiều vòng lặp lồng nhau?

a)

Thoát toàn bộ chương trình

b)

Vòng lặp chứa nó

c)

Vòng lặp ngoài cùng nhất

d)

Vòng lặp đầu tiên khai báo

74.

Trong range-based for, làm sao để thay đổi giá trị phần tử mảng?

a)

Không thể thay đổi được

b)

Dùng biến tham chiếu &

c)

Chỉ cần gán x = giá trị

d)

Dùng thêm từ khóa long

75.

Tại sao không nên lạm dụng vòng lặp vô hạn với lệnh break?

a)

Làm máy tính bị hỏng

b)

Code khó đọc và bảo trì

c)

Không tốn bộ nhớ đệm

d)

Chương trình chạy nhanh

76.

Một vòng lặp for có thể không có thân (khối lệnh) không?

a)

Bắt buộc phải có thân

b)

Có thể dùng dấu chấm phẩy ;

c)

Chỉ dùng được với while

d)

Làm máy bị treo lập tức

77.

Thứ tự đúng của các bước trong một vòng lặp for là?

a)

Khởi tạo -> Nhảy -> Lệnh

b)

Khởi tạo -> Điều kiện -> Lệnh -> Nhảy

c)

Lệnh -> Điều kiện -> Nhảy -> Đợi

d)

Điều kiện -> Nhảy -> Lệnh -> Đầu

78.

Cấu trúc lặp nào dễ gây lỗi "lặp thừa 1 lần" nhất?

a)

Vòng lặp for truyền thống

b)

Vòng lặp do...while

c)

Vòng lặp while logic

d)

For dựa trên phạm vi

79.

Lệnh continue trong do...while sẽ nhảy đến đâu?

a)

Nhảy về từ khóa do

b)

Nhảy tới kiểm tra điều kiện ở cuối

c)

Thoát khỏi chương trình

d)

Xóa giá trị biến đếm

80.

Kết quả của for (int i=0; i<=5; i++){ if(i==2) break; cout<<i; }\text{for (int i=0; i<=5; i++)\{ if(i==2) break; cout<<i; \}} là gì?

a)

In ra giá trị 0 1 2

b)

In ra giá trị 0 1

c)

In ra giá trị 0 1 3 4

d)

In ra giá trị 2 3 4