Trắc nghiệm Tin 10 Cánh diều Bài 6: Câu lệnh rẽ nhánh - Đề 07 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.
Câu 1: Trong Python, giả sử biến `x` đang có giá trị là 5. Điều gì sẽ xảy ra khi đoạn mã `if x > 10: print("Lớn hơn 10")` được thực thi?
- A. Chương trình sẽ báo lỗi cú pháp.
- B. Màn hình sẽ hiển thị "Lớn hơn 10".
- C. Giá trị của biến `x` sẽ thay đổi thành 10.
- D. Không có gì xảy ra trên màn hình.
Câu 2: Cho đoạn mã Python sau: `age = 15`
`if age >= 18:`
` print("Bạn đủ tuổi bầu cử")`
`else:`
` print("Bạn chưa đủ tuổi bầu cử")`. Kết quả hiển thị trên màn hình là gì?
- A. Bạn đủ tuổi bầu cử
- B. Bạn chưa đủ tuổi bầu cử
- C. Cả hai dòng chữ trên
- D. Không có gì hiển thị
Câu 3: Xác định lỗi sai trong đoạn mã Python sau:
`if score > 90`
`print("Xuất sắc")`
`else:`
`print("Khá")`
- A. Thiếu dấu hai chấm sau điều kiện `if score > 90`.
- B. Thụt lề dòng `print("Xuất sắc")` chưa đúng.
- C. Từ khóa `else` phải viết hoa chữ cái đầu.
- D. Không có lỗi nào trong đoạn mã trên.
Câu 4: Trong Python, cấu trúc rẽ nhánh `if-elif-else` được sử dụng khi nào?
- A. Chỉ có một lựa chọn duy nhất cần xét.
- B. Chỉ có hai lựa chọn (đúng hoặc sai) cần xét.
- C. Cần xét nhiều hơn hai trường hợp điều kiện khác nhau.
- D. Để thực hiện lặp lại một đoạn mã nhiều lần.
Câu 5: Cho đoạn mã Python:
`temperature = 25`
`if temperature > 30:`
` print("Trời nóng")`
`elif temperature > 20:`
` print("Thời tiết dễ chịu")`
`else:`
` print("Trời mát")`. Kết quả in ra màn hình là gì?
- A. Trời nóng
- B. Thời tiết dễ chịu
- C. Trời mát
- D. Không có gì hiển thị
Câu 6: Biểu thức điều kiện trong câu lệnh rẽ nhánh phải trả về giá trị kiểu dữ liệu nào?
- A. Số nguyên (Integer)
- B. Số thực (Float)
- C. Boolean (True/False)
- D. Xâu ký tự (String)
Câu 7: Xét đoạn mã Python:
`is_raining = True`
`if is_raining:`
` print("Mang ô khi ra ngoài")`. Điều kiện `is_raining` trong câu lệnh `if` tương đương với điều kiện nào?
- A. `is_raining == False`
- B. `is_raining == True`
- C. `is_raining != True`
- D. `is_raining != False`
Câu 8: Cho đoạn mã Python:
`number = -5`
`if number >= 0:`
` result = "Dương"`
`else:`
` result = "Âm"`. Giá trị của biến `result` sau khi thực hiện đoạn mã là gì?
- A. "Dương"
- B. "0"
- C. "Âm"
- D. Không xác định
Câu 9: Trong Python, để viết một câu lệnh rẽ nhánh kiểm tra đồng thời hai điều kiện, ta sử dụng toán tử logic nào?
- A. Toán tử số học (+, -, *, /)
- B. Toán tử gán (=)
- C. Toán tử so sánh (>, <, ==)
- D. Toán tử logic (and, or, not)
Câu 10: Cho đoạn mã Python:
`a = 10`
`b = 5`
`if a > 8 and b < 7:`
` print("Cả hai điều kiện đúng")`
`else:`
` print("Ít nhất một điều kiện sai")`. Kết quả hiển thị?
- A. Cả hai điều kiện đúng
- B. Ít nhất một điều kiện sai
- C. Không có gì hiển thị
- D. Lỗi cú pháp
Câu 11: Điều gì sẽ xảy ra nếu bạn bỏ thụt lề các dòng lệnh bên trong khối `if` hoặc `else` trong Python?
- A. Chương trình vẫn chạy bình thường nhưng có thể cho kết quả sai.
- B. Chương trình sẽ báo lỗi cú pháp (IndentationError).
- C. Chương trình sẽ tự động sửa lỗi thụt lề.
- D. Khối lệnh `if` hoặc `else` sẽ bị bỏ qua hoàn toàn.
Câu 12: Trong một bài toán kiểm tra số chẵn lẻ, cấu trúc rẽ nhánh nào phù hợp nhất để sử dụng?
- A. Chỉ sử dụng câu lệnh `if` đơn.
- B. Sử dụng câu lệnh `if-else`.
- C. Sử dụng cấu trúc lặp `for`.
- D. Không cần cấu trúc rẽ nhánh.
Câu 13: Cho đoạn mã Python:
`score = 75`
`grade = ""`
`if score >= 80:`
` grade = "A"`
`elif score >= 60:`
` grade = "B"`
`else:`
` grade = "C"`. Giá trị của biến `grade` sau khi thực hiện là gì?
- A. "A"
- B. "B"
- C. "C"
- D. "" (xâu rỗng)
Câu 14: Trong Python, bạn có thể lồng các câu lệnh `if` vào bên trong nhau không?
- A. Có, hoàn toàn có thể lồng các câu lệnh `if` bên trong nhau.
- B. Không, Python không cho phép lồng câu lệnh `if`.
- C. Chỉ được lồng `if` bên trong `if`, không được lồng trong `else`.
- D. Chỉ được lồng tối đa một cấp.
Câu 15: Cho đoạn mã Python:
`x = 5`
`y = 10`
`if x > 3:`
` if y < 15:`
` print("x lớn hơn 3 và y nhỏ hơn 15")`
` else:`
` print("x lớn hơn 3 nhưng y không nhỏ hơn 15")`
`else:`
` print("x không lớn hơn 3")`. Kết quả hiển thị?
- A. x lớn hơn 3 và y nhỏ hơn 15
- B. x lớn hơn 3 nhưng y không nhỏ hơn 15
- C. x không lớn hơn 3
- D. Không có gì hiển thị
Câu 16: Trong Python, từ khóa nào được sử dụng để chỉ nhánh "nếu không thì" trong cấu trúc rẽ nhánh?
- A. then
- B. elseif
- C. else
- D. otherwise
Câu 17: Cho đoạn mã Python:
`value = 0`
`if value:`
` print("Giá trị khác không")`
`else:`
` print("Giá trị bằng không")`. Kết quả hiển thị?
- A. Giá trị khác không
- B. Giá trị bằng không
- C. Lỗi cú pháp
- D. Không có gì hiển thị
Câu 18: Để kiểm tra xem một biến `name` có phải là xâu rỗng hay không trong câu lệnh `if`, điều kiện nào sau đây là đúng?
- A. `if name != "":`
- B. `if len(name) > 0:`
- C. `if name:`
- D. `if not name:`
Câu 19: Hãy sắp xếp các bước thực hiện cấu trúc `if-elif-else` theo đúng thứ tự:
A. Thực hiện khối lệnh của nhánh `else` (nếu có).
B. Kiểm tra điều kiện của các nhánh `elif` theo thứ tự.
C. Thực hiện khối lệnh của nhánh `if`.
D. Kiểm tra điều kiện của nhánh `if`.
- A. D - C - B - A
- B. D - B - C - A
- C. C - D - B - A
- D. D - B - C (hoặc A nếu không có `elif` hoặc tất cả `elif` sai)
Câu 20: Trong Python, điều gì xảy ra khi một câu lệnh `if` được thực thi và điều kiện của nó là đúng?
- A. Khối lệnh bên trong câu lệnh `if` sẽ được thực thi.
- B. Khối lệnh bên trong câu lệnh `else` (nếu có) sẽ được thực thi.
- C. Chương trình sẽ bỏ qua câu lệnh `if` và tiếp tục thực hiện các lệnh tiếp theo.
- D. Chương trình sẽ dừng lại và báo lỗi.
Câu 21: Để viết chương trình kiểm tra một số nhập vào là số dương, số âm hay số không, cấu trúc rẽ nhánh nào là phù hợp nhất?
- A. Câu lệnh `if` đơn.
- B. Câu lệnh `if-else`.
- C. Cấu trúc `if-elif-else`.
- D. Cấu trúc lặp `while`.
Câu 22: Cho đoạn mã Python:
`x = 7`
`if x % 2 == 0:`
` print("Số chẵn")`
`elif x % 3 == 0:`
` print("Chia hết cho 3")`
`else:`
` print("Số lẻ và không chia hết cho 3")`. Kết quả hiển thị?
- A. Số chẵn
- B. Chia hết cho 3
- C. Số lẻ và không chia hết cho 3
- D. Không có gì hiển thị
Câu 23: Trong Python, bạn có thể sử dụng bao nhiêu nhánh `elif` trong một cấu trúc `if-elif-else`?
- A. Tối đa một nhánh `elif`.
- B. Tối đa hai nhánh `elif`.
- C. Tối đa ba nhánh `elif`.
- D. Không giới hạn số lượng nhánh `elif`.
Câu 24: Cho đoạn mã Python:
`age = 20`
`has_id = False`
`if age >= 18 and has_id:`
` print("Đủ điều kiện")`
`else:`
` print("Không đủ điều kiện")`. Kết quả hiển thị?
- A. Đủ điều kiện
- B. Không đủ điều kiện
- C. Lỗi cú pháp
- D. Không có gì hiển thị
Câu 25: Trong câu lệnh rẽ nhánh, "điều kiện" thường được hiểu là gì?
- A. Một giá trị số cụ thể.
- B. Một biểu thức logic trả về True hoặc False.
- C. Một đoạn văn bản mô tả tình huống.
- D. Tên của một biến số.
Câu 26: Cho đoạn mã Python:
`x = 15`
`if x < 10:`
` print("Nhóm A")`
`elif x < 20:`
` print("Nhóm B")`
`elif x < 30:`
` print("Nhóm C")`
`else:`
` print("Nhóm D")`. Kết quả hiển thị?
- A. Nhóm A
- B. Nhóm B
- C. Nhóm C
- D. Nhóm D
Câu 27: Phát biểu nào sau đây là đúng về câu lệnh rẽ nhánh trong lập trình?
- A. Cho phép chương trình thực hiện các hành động khác nhau tùy thuộc vào điều kiện.
- B. Luôn luôn thực hiện tất cả các khối lệnh bên trong nó.
- C. Chỉ được sử dụng để thực hiện các phép tính toán học.
- D. Làm cho chương trình chạy chậm hơn.
Câu 28: Cho đoạn mã Python:
`is_weekend = True`
`if is_weekend:`
` activity = "Nghỉ ngơi"`
`else:`
` activity = "Đi làm"`. Biến `activity` sẽ có giá trị nào sau khi chạy mã?
- A. Nghỉ ngơi
- B. Đi làm
- C. Không xác định
- D. Lỗi chương trình
Câu 29: Trong Python, nếu bạn muốn kiểm tra nhiều điều kiện một cách tuần tự và chỉ thực hiện một khối lệnh tương ứng với điều kiện đầu tiên đúng, bạn nên sử dụng cấu trúc rẽ nhánh nào?
- A. Câu lệnh `if` đơn lặp lại nhiều lần.
- B. Câu lệnh `if-else` lồng nhau.
- C. Cấu trúc `if-elif-else`.
- D. Cấu trúc lặp `for`.
Câu 30: Cho đoạn mã Python:
`x = -2`
`if x > 0 or x == 0:`
` status = "Không âm"`
`else:`
` status = "Âm"`. Giá trị của biến `status` sau khi thực hiện?
- A. Không âm
- B. Âm
- C. Không xác định
- D. Lỗi chương trình