1. Cho thuật toán: Nhập số nguyên N. Nếu N > 0 thì thực hiện lặp lại việc giảm N đi 1 cho đến khi N = 0. In ra N.. Khi N = 3, kết quả in ra là gì?
2. Khi sử dụng cấu trúc lặp While...do, việc đảm bảo điều kiện lặp sẽ thay đổi để dẫn đến kết thúc vòng lặp là trách nhiệm của ai?
A. Người dùng nhập dữ liệu.
B. Trình biên dịch.
C. Người lập trình thuật toán.
D. Hệ điều hành.
3. Cấu trúc lặp nào sau đây có thể dẫn đến vòng lặp vô hạn nếu điều kiện không bao giờ sai?
A. For...to...do
B. While...do
C. Do...While
D. Tất cả các cấu trúc trên đều có thể.
4. Cấu trúc lặp nào đảm bảo khối lệnh bên trong sẽ được thực hiện ít nhất một lần?
A. While...do
B. For...to...do
C. Do...While (hoặc Repeat...Until)
D. Cả While...do và For...to...do
5. Cấu trúc lặp nào phù hợp nhất để tính tổng các số tự nhiên từ 1 đến N, với N được nhập từ bàn phím?
A. While...do
B. For...to...do
C. Do...While
D. Cả ba loại trên đều có thể sử dụng.
6. Lệnh break trong cấu trúc lặp dùng để làm gì?
A. Bắt đầu một vòng lặp mới.
B. Tạm dừng vòng lặp.
C. Thoát hoàn toàn khỏi vòng lặp hiện tại.
D. Chuyển sang lệnh tiếp theo sau vòng lặp.
7. Trong thuật toán, khi nào thì việc sử dụng cấu trúc lặp là hợp lý và hiệu quả nhất?
A. Khi cần thực hiện một tác vụ duy nhất.
B. Khi cần lặp lại một tập hợp các lệnh nhiều lần.
C. Khi cần xử lý dữ liệu đầu vào phức tạp.
D. Khi cần đưa ra một quyết định duy nhất.
8. Cho thuật toán: Cho biến đếm i = 1. Lặp lại: In ra giá trị của i. Tăng i lên 2. Nếu i > 10 thì dừng.. Giá trị của i sau lần lặp cuối cùng là bao nhiêu?
9. Giả sử ta có một danh sách các số và muốn tính trung bình cộng của chúng. Cấu trúc lặp nào là phù hợp nhất để duyệt qua từng số trong danh sách?
A. Chỉ có thể dùng For...to...do.
B. Chỉ có thể dùng While...do.
C. Cả For...to...do và While...do đều có thể dùng, tùy thuộc vào cách biểu diễn danh sách.
D. Không thể dùng cấu trúc lặp, phải dùng cấu trúc rẽ nhánh.
10. Trong thuật toán, cấu trúc lặp được sử dụng để làm gì?
A. Thực hiện một hoặc nhiều lệnh lặp đi lặp lại.
B. Rẽ nhánh thực hiện câu lệnh dựa trên điều kiện.
C. Xử lý dữ liệu đầu vào một lần.
D. Dừng thuật toán ngay lập tức.
11. Phát biểu nào sau đây mô tả đúng nhất về vòng lặp vô hạn trong thuật toán?
A. Một vòng lặp thực hiện đúng 100 lần.
B. Một vòng lặp mà điều kiện dừng không bao giờ được thỏa mãn.
C. Một vòng lặp thực hiện ít nhất một lần.
D. Một vòng lặp thực hiện với số lần được xác định trước.
12. Lệnh continue trong cấu trúc lặp dùng để làm gì?
A. Thoát hoàn toàn khỏi vòng lặp.
B. Bỏ qua các lệnh còn lại trong lần lặp hiện tại và chuyển sang lần lặp tiếp theo.
C. Thực hiện lại khối lệnh.
D. Dừng thuật toán.
13. Cấu trúc lặp For...to...do thường sử dụng biến đếm có kiểu dữ liệu gì?
A. Chỉ có thể là số nguyên.
B. Có thể là số nguyên hoặc số thực.
C. Chỉ có thể là ký tự.
D. Có thể là số nguyên, số thực hoặc ký tự, tùy ngôn ngữ lập trình.
14. Khi thiết kế thuật toán, mục tiêu chính của việc sử dụng cấu trúc lặp là gì?
A. Giảm thiểu số lượng biến cần dùng.
B. Tăng cường khả năng xử lý lỗi của thuật toán.
C. Tự động hóa các tác vụ lặp đi lặp lại một cách hiệu quả.
D. Đảm bảo thuật toán luôn kết thúc trong thời gian ngắn nhất.
15. Cấu trúc lặp For...to...do (hoặc For...do) thường được sử dụng khi nào?
A. Khi số lần lặp không xác định trước.
B. Khi cần lặp lại một hành động cho đến khi một điều kiện nào đó không còn đúng nữa.
C. Khi số lần lặp đã được xác định trước, thường thông qua một biến đếm.
D. Khi chỉ cần thực hiện một hành động duy nhất.
16. Cấu trúc lặp Do...While kiểm tra điều kiện lặp ở đâu?
A. Ở đầu vòng lặp, trước khi thực hiện khối lệnh.
B. Ở cuối vòng lặp, sau khi thực hiện khối lệnh.
C. Ở giữa vòng lặp.
D. Không có kiểm tra điều kiện.
17. Cấu trúc lặp For i from 1 to 5 do sẽ thực hiện vòng lặp bao nhiêu lần?
A. 4 lần
B. 5 lần
C. 6 lần
D. Vô hạn lần
18. Phân biệt cấu trúc lặp While...do và For...to...do dựa trên yếu tố nào là quan trọng nhất?
A. Số lần lặp đã biết trước hay chưa.
B. Điều kiện lặp ban đầu.
C. Khả năng sử dụng biến đếm.
D. Khả năng thoát khỏi vòng lặp.
19. Để thoát khỏi một vòng lặp vô hạn, ta cần làm gì?
A. Sử dụng lệnh break hoặc sửa đổi điều kiện lặp sao cho nó sai.
B. Tăng số lần lặp lên.
C. Chỉ cần chờ đợi thuật toán kết thúc.
D. Thêm nhiều lệnh vào bên trong vòng lặp.
20. Cấu trúc lặp While...do thường được sử dụng khi nào?
A. Khi số lần lặp đã được xác định trước.
B. Khi cần lặp lại một hành động cho đến khi một điều kiện nào đó không còn đúng nữa.
C. Khi cần thực hiện hành động ít nhất một lần.
D. Khi cần lặp lại một hành động với số lần cố định.
21. Cho thuật toán: Nhập số nguyên x. Nếu x là số dương: lặp lại việc giảm x đi 1 cho đến khi x = 0. In ra x. Nếu x là số âm: bỏ qua vòng lặp. In ra thông báo. Nếu nhập x = -5, kết quả là gì?
A. 0
B. -5
C. Thông báo x là số âm
D. Thuật toán không thực hiện gì.
22. Phát biểu nào mô tả đúng về sự khác biệt cơ bản giữa While...do và Do...While?
A. While...do kiểm tra điều kiện ở đầu, Do...While kiểm tra ở cuối.
B. While...do thực hiện ít nhất một lần, Do...While có thể không thực hiện lần nào.
C. While...do luôn dùng biến đếm, Do...While không dùng biến đếm.
D. Không có sự khác biệt cơ bản nào.
23. Cần sử dụng cấu trúc lặp nào nếu muốn in ra các số chẵn từ 2 đến 10?
A. While...do, với điều kiện i <= 10 và tăng i lên 1 mỗi lần.
B. For...to...do, với bước nhảy là 2.
C. Do...While, với điều kiện kiểm tra phù hợp.
D. Tất cả các cấu trúc trên đều có thể sử dụng với cài đặt phù hợp.
24. Phân tích thuật toán sau: Nhập số N. Khởi tạo biến đếm = 0. Lặp khi biến đếm < N: Tăng biến đếm lên 1. In ra Xin chào. Nếu người dùng nhập N = 4, thuật toán sẽ in ra bao nhiêu lần Xin chào?
A. 3 lần
B. 4 lần
C. 5 lần
D. Vô hạn lần
25. Trong cấu trúc lặp While...do, nếu điều kiện ban đầu là sai thì điều gì sẽ xảy ra?
A. Khối lệnh bên trong sẽ thực hiện một lần.
B. Khối lệnh bên trong sẽ thực hiện nhiều lần.
C. Khối lệnh bên trong sẽ không được thực hiện lần nào.
D. Thuật toán sẽ bị lỗi.