1. Nếu một chương trình cần phân loại người dùng dựa trên độ tuổi: dưới 13 (Trẻ em), từ 13 đến 17 (Thiếu niên), từ 18 đến 64 (Trưởng thành), và từ 65 trở lên (Người cao tuổi), cấu trúc rẽ nhánh nào là phù hợp và hiệu quả nhất?
A. Nhiều câu lệnh IF-THEN độc lập.
B. Một câu lệnh IF-THEN-ELSE.
C. Chuỗi các câu lệnh IF-ELSE IF-ELSE.
D. Vòng lặp WHILE.
2. Cấu trúc rẽ nhánh nào cho phép bạn kiểm tra nhiều điều kiện liên tiếp và thực thi khối lệnh tương ứng với điều kiện đúng đầu tiên?
A. IF-THEN
B. IF-THEN-ELSE
C. IF-ELSE IF-ELSE
D. WHILE LOOP
3. Trong Scratch, khối lệnh repeat được sử dụng cho mục đích gì?
A. Thực hiện một hành động duy nhất nếu điều kiện đúng.
B. Thực hiện một hành động hoặc nhóm hành động một số lần xác định.
C. Thực hiện một hành động lặp đi lặp lại cho đến khi điều kiện sai.
D. Thực hiện một hành động tùy thuộc vào nhiều điều kiện.
4. Nếu bạn muốn chương trình của mình phản ứng khác nhau khi người dùng nhập vào các ký tự A, B, hoặc C, cấu trúc rẽ nhánh nào sẽ hiệu quả nhất?
A. Sử dụng ba câu lệnh IF-THEN riêng biệt.
B. Sử dụng một câu lệnh IF-THEN-ELSE.
C. Sử dụng cấu trúc CASE (hoặc SWITCH).
D. Sử dụng vòng lặp FOR.
5. Nếu một chương trình cần xác định xem một học sinh có được học bổng hay không dựa trên cả điểm trung bình và hoàn cảnh gia đình, cấu trúc rẽ nhánh nào là phù hợp nhất?
A. IF-THEN
B. IF-THEN-ELSE
C. IF-ELSE IF-ELSE hoặc IF lồng IF
D. Vòng lặp FOR
6. Biểu thức logic nào sau đây là sai (False) nếu biến gio_lam là 40 và biến gio_nghi là 8?
A. (gio_lam >= 40) AND (gio_nghi <= 8)
B. (gio_lam < 40) OR (gio_nghi > 8)
C. (gio_lam == 40) OR (gio_nghi == 8)
D. (gio_lam > 40) AND (gio_nghi < 8)
7. Nếu bạn có một danh sách các sinh viên và muốn chỉ xử lý những sinh viên có điểm thi lớn hơn hoặc bằng 8.0, bạn sẽ sử dụng loại cấu trúc nào?
A. Một vòng lặp WHILE để lặp qua tất cả sinh viên.
B. Một câu lệnh IF-THEN để kiểm tra điểm của từng sinh viên trong danh sách.
C. Một câu lệnh FOR để lặp qua danh sách và một câu lệnh IF-THEN bên trong để kiểm tra điều kiện.
D. Tất cả các phương án trên đều có thể áp dụng tùy cách triển khai.
8. Đâu là ưu điểm chính của việc sử dụng cấu trúc rẽ nhánh trong lập trình?
A. Giúp chương trình chạy nhanh hơn.
B. Tăng khả năng tái sử dụng mã.
C. Cho phép chương trình đưa ra các quyết định dựa trên điều kiện.
D. Giảm dung lượng bộ nhớ sử dụng.
9. Xét đoạn mã giả sau: IF tuổi > 18 THEN IN Đủ tuổi bầu cử ELSE IN Chưa đủ tuổi bầu cử. Nếu biến tuổi có giá trị là 16, kết quả hiển thị sẽ là gì?
A. Đủ tuổi bầu cử
B. Chưa đủ tuổi bầu cử
C. Không có kết quả nào được hiển thị.
D. Lỗi cú pháp.
10. Xét biểu thức logic: (A > B) AND (C < D). Nếu A=10, B=5, C=2, D=8, thì giá trị của biểu thức này là gì?
A. Đúng (True)
B. Sai (False)
C. Có thể đúng hoặc sai tùy thuộc vào các biến khác.
D. Lỗi cú pháp.
11. Biểu thức logic nào sau đây sẽ trả về giá trị True (Đúng) nếu biến so_luong lớn hơn 0 VÀ nhỏ hơn 10?
A. (so_luong > 0) OR (so_luong < 10)
B. (so_luong > 0) AND (so_luong < 10)
C. NOT (so_luong > 0) AND (so_luong < 10)
D. (so_luong < 0) OR (so_luong > 10)
12. Câu lệnh rẽ nhánh nào sẽ bị bỏ qua hoàn toàn nếu điều kiện của nó là sai?
A. IF-THEN-ELSE
B. IF-THEN
C. CASE
D. Cả A và B
13. Câu lệnh rẽ nhánh nào thường được sử dụng khi bạn muốn thực hiện một hành động nếu một điều kiện là đúng, và nếu điều kiện đó sai, bạn muốn kiểm tra một điều kiện khác?
A. IF-THEN
B. IF-THEN-ELSE
C. IF-ELSE IF-ELSE
D. WHILE
14. Trong ngôn ngữ lập trình Scratch, làm thế nào để tạo ra một chương trình khi nhấn vào lá cờ xanh, nếu nhân vật chạm vào màu đỏ thì nói Dừng lại!, còn nếu không chạm vào màu đỏ thì tiếp tục di chuyển?
A. Sử dụng khối repeat until với điều kiện chạm màu đỏ.
B. Sử dụng khối if ... then ... else ... với điều kiện touching color red?.
C. Sử dụng khối wait 1 seconds.
D. Sử dụng khối broadcast message.
15. Trong lập trình, lồng nhau (nesting) cấu trúc rẽ nhánh có nghĩa là gì?
A. Sử dụng nhiều câu lệnh IF-THEN liên tiếp.
B. Đặt một cấu trúc rẽ nhánh bên trong một cấu trúc rẽ nhánh khác.
C. Sử dụng nhiều toán tử logic trong một điều kiện.
D. Sử dụng nhiều biến trong một điều kiện.
16. Cấu trúc rẽ nhánh IF-THEN được sử dụng khi nào?
A. Khi cần thực hiện một hành động duy nhất nếu điều kiện đúng.
B. Khi cần thực hiện một hành động nếu điều kiện đúng và một hành động khác nếu điều kiện sai.
C. Khi cần lặp lại một hành động nhiều lần.
D. Khi cần thực hiện một hành động bất kể điều kiện.
17. Trong lập trình, điều kiện trong một câu lệnh rẽ nhánh thường là gì?
A. Một phép gán giá trị.
B. Một biểu thức trả về giá trị Đúng hoặc Sai.
C. Một lệnh gọi hàm.
D. Một chuỗi ký tự.
18. Để kiểm tra xem một biến tuổi có nằm trong khoảng từ 18 đến 65 (bao gồm cả hai đầu mút) hay không, biểu thức logic nào là chính xác?
A. (tuổi >= 18) OR (tuổi <= 65)
B. (tuổi > 18) AND (tuổi < 65)
C. (tuổi >= 18) AND (tuổi <= 65)
D. (tuổi < 18) OR (tuổi > 65)
19. Trong một chương trình, nếu bạn muốn kiểm tra xem một số có phải là số chẵn hay không, bạn sẽ sử dụng phép toán nào kết hợp với cấu trúc rẽ nhánh?
A. Phép cộng (+)
B. Phép chia lấy dư (%)
C. Phép nhân (*)
D. Phép lũy thừa (^)
20. Khi xem xét cấu trúc rẽ nhánh, toán tử so sánh dùng để làm gì?
A. Gán giá trị cho biến.
B. Thực hiện các phép tính toán học.
C. So sánh hai giá trị hoặc biểu thức và trả về Đúng/Sai.
D. Nối các chuỗi ký tự.
21. Xét biểu thức logic: (X < 5) OR (Y > 10). Nếu X = 3 và Y = 12, giá trị của biểu thức này là gì?
A. Đúng (True)
B. Sai (False)
C. Không xác định.
D. Lỗi cú pháp.
22. Trong lập trình, cấu trúc rẽ nhánh được sử dụng để thực hiện một hành động hoặc một nhóm hành động dựa trên điều kiện nào đó. Câu lệnh nào sau đây là một ví dụ về cấu trúc rẽ nhánh IF-THEN-ELSE trong ngôn ngữ lập trình giả định (pseudocode)?
A. Lặp lại hành động cho đến khi điều kiện sai.
B. IF điểm số >= 5 THEN IN Đạt ELSE IN Không đạt.
C. Gán giá trị 10 cho biến a.
D. Gọi một hàm có tên tinh_tong.
23. Cấu trúc rẽ nhánh nào thường được sử dụng khi có nhiều lựa chọn độc lập và không có mối quan hệ thứ tự rõ ràng giữa các lựa chọn đó?
A. IF-THEN-ELSE
B. IF-ELSE IF-ELSE
C. CASE (hoặc SWITCH)
D. WHILE
24. Trong ngôn ngữ lập trình Scratch, khối lệnh nào được sử dụng để tạo ra cấu trúc rẽ nhánh IF-THEN-ELSE?
A. Khối repeat
B. Khối forever
C. Khối if ... then ... else ...
D. Khối wait
25. Nếu bạn có một danh sách các số và muốn tìm số lớn nhất, bạn sẽ sử dụng cấu trúc rẽ nhánh kết hợp với việc lặp qua danh sách như thế nào?
A. Sử dụng IF để cộng tất cả các số lại.
B. Sử dụng IF để so sánh từng số với số lớn nhất hiện tại đã tìm được và cập nhật nếu cần.
C. Sử dụng IF để xóa tất cả các số nhỏ hơn trung bình.
D. Sử dụng IF để chia danh sách thành hai nửa.