1. Khi gọi một hàm trong Python, bạn cần cung cấp những gì nếu hàm đó yêu cầu tham số (parameter)?
A. Chỉ tên hàm.
B. Các giá trị (argument) tương ứng với các tham số của hàm.
C. Một chuỗi mô tả chức năng của hàm.
D. Một biến toàn cục để hàm sử dụng.
2. Phát biểu nào sau đây mô tả đúng về kiểu dữ liệu chuỗi (string) trong lập trình?
A. Chỉ chứa các ký tự số.
B. Là một dãy các ký tự được bao bọc bởi dấu nháy đơn hoặc nháy kép.
C. Luôn luôn là một số thực.
D. Chỉ có thể chứa các giá trị True hoặc False.
3. Kiểu dữ liệu nào trong Python thường được sử dụng để biểu diễn số nguyên không có phần thập phân?
A. float
B. str
C. bool
D. int
4. Trong Python, câu lệnh break được sử dụng để làm gì trong một vòng lặp?
A. Tiếp tục vòng lặp với lần lặp tiếp theo.
B. Bỏ qua lần lặp hiện tại và chuyển sang lần lặp tiếp theo.
C. Ngắt hoàn toàn vòng lặp và thoát ra khỏi nó.
D. Thực hiện lại khối lệnh của vòng lặp.
5. Trong Python, câu lệnh continue có chức năng gì trong một vòng lặp?
A. Thoát hoàn toàn khỏi vòng lặp.
B. Bỏ qua phần còn lại của 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 của vòng lặp.
D. Kiểm tra lại điều kiện của vòng lặp.
6. Phát biểu nào sau đây mô tả đúng nhất chức năng của câu lệnh if...elif...else trong lập trình?
A. Thực hiện một khối lệnh duy nhất dựa trên một điều kiện.
B. Lặp lại một khối lệnh nhiều lần cho đến khi điều kiện sai.
C. Thực hiện một trong nhiều khối lệnh dựa trên các điều kiện tuần tự.
D. Gom nhiều lệnh lại thành một khối để thực thi.
7. Câu lệnh return trong một hàm có chức năng gì?
A. Dừng chương trình.
B. Gửi một giá trị trở lại cho nơi gọi hàm.
C. Bắt đầu một vòng lặp mới.
D. In kết quả ra màn hình.
8. Câu lệnh nào sau đây trong Python được sử dụng để in một dòng văn bản ra màn hình?
A. display()
B. show()
C. print()
D. output()
9. Câu lệnh nào sau đây trong Python dùng để chuyển đổi một chuỗi thành một số nguyên?
A. str()
B. float()
C. int()
D. string_to_int()
10. Phát biểu nào sau đây mô tả đúng về cấu trúc dữ liệu danh sách (list) trong Python?
A. Là một tập hợp các phần tử duy nhất, không có thứ tự.
B. Là một tập hợp các phần tử có thứ tự, có thể thay đổi và cho phép trùng lặp.
C. Chỉ có thể chứa các phần tử cùng kiểu dữ liệu.
D. Là một cấu trúc dữ liệu chỉ đọc, không thể thay đổi sau khi tạo.
11. Phát biểu nào sau đây đúng về kiểu dữ liệu từ điển (dictionary) trong Python?
A. Là một tập hợp các phần tử có thứ tự, có thể thay đổi.
B. Là một tập hợp các cặp khóa-giá trị (key-value), không có thứ tự và các khóa phải là duy nhất.
C. Chỉ có thể lưu trữ các chuỗi.
D. Là cấu trúc dữ liệu chỉ đọc.
12. Trong Python, kiểu dữ liệu bool được sử dụng để biểu diễn giá trị nào?
A. Một chuỗi ký tự.
B. Một số thực có phần thập phân.
C. Giá trị logic: Đúng (True) hoặc Sai (False).
D. Một tập hợp các phần tử không theo thứ tự.
13. Trong Python, câu lệnh `input()` dùng để làm gì?
A. Hiển thị một thông báo trên màn hình.
B. Đọc dữ liệu từ người dùng nhập vào từ bàn phím.
C. Thực hiện một phép tính toán học.
D. Lưu dữ liệu vào một tệp tin.
14. Trong lập trình, khái niệm biến (variable) được hiểu là gì?
A. Một lệnh để máy tính thực hiện một hành động cụ thể.
B. Một quy tắc để tổ chức dữ liệu trong máy tính.
C. Một vùng nhớ được đặt tên để lưu trữ dữ liệu có thể thay đổi.
D. Một chuỗi các ký tự dùng để hiển thị thông tin.
15. Câu lệnh nào trong Python được sử dụng để khai báo một hàm?
A. function
B. def
C. procedure
D. method
16. Trong lập trình, vòng lặp vô hạn xảy ra khi nào?
A. Khi điều kiện dừng lặp luôn đúng.
B. Khi không có biến nào được sử dụng.
C. Khi chương trình thực hiện quá nhiều phép tính.
D. Khi vòng lặp kết thúc sớm hơn dự kiến.
17. Phát biểu nào sau đây là đúng về phạm vi của biến (variable scope) trong lập trình?
A. Biến luôn có thể truy cập từ mọi nơi trong chương trình.
B. Xác định nơi mà một biến có thể được sử dụng hoặc tham chiếu đến.
C. Chỉ liên quan đến kiểu dữ liệu của biến.
D. Quyết định tốc độ truy cập biến.
18. Trong lập trình, hàm (function) là gì?
A. Một biến dùng để lưu trữ dữ liệu.
B. Một khối mã được đặt tên, có thể được gọi để thực thi một tác vụ cụ thể.
C. Một cách để kết nối các máy tính lại với nhau.
D. Một kiểu dữ liệu mới cho phép lưu trữ nhiều loại thông tin.
19. Trong Python, làm thế nào để truy cập phần tử đầu tiên của một danh sách có tên là my_list?
A. my_list(0)
B. my_list[1]
C. my_list.first()
D. my_list[0]
20. Khi sử dụng cấu trúc else trong câu lệnh if...else, khối lệnh của else sẽ được thực thi khi nào?
A. Khi điều kiện của if là đúng.
B. Khi điều kiện của if là sai.
C. Luôn luôn sau khi khối lệnh if thực thi.
D. Chỉ khi có nhiều điều kiện elif là sai.
21. Phát biểu nào sau đây mô tả chính xác vai trò của thuật toán trong lập trình?
A. Là ngôn ngữ mà máy tính hiểu trực tiếp.
B. Là một tập hợp các bước hoặc quy tắc rõ ràng để giải quyết một vấn đề hoặc thực hiện một nhiệm vụ.
C. Là phần cứng của máy tính.
D. Là giao diện đồ họa người dùng.
22. Phát biểu nào sau đây là đúng về cấu trúc lặp for trong Python?
A. Chỉ sử dụng khi biết trước số lần lặp.
B. Dùng để lặp qua một chuỗi các phần tử hoặc một phạm vi số.
C. Luôn yêu cầu một điều kiện để dừng lặp.
D. Chỉ có thể lặp qua các số nguyên.
23. Phát biểu nào sau đây là đúng về biến toàn cục (global variable) trong lập trình?
A. Chỉ có thể truy cập bên trong một hàm.
B. Có thể truy cập và sửa đổi từ bất kỳ đâu trong chương trình.
C. Tự động bị xóa khi chương trình kết thúc.
D. Luôn có giá trị là 0.
24. Trong lập trình, biến cục bộ (local variable) là gì?
A. Biến có thể truy cập từ mọi nơi trong chương trình.
B. Biến chỉ tồn tại và có thể truy cập trong phạm vi của hàm hoặc khối lệnh mà nó được khai báo.
C. Biến được khai báo bên ngoài tất cả các hàm.
D. Biến được chia sẻ giữa nhiều chương trình.
25. Câu lệnh nào sau đây trong ngôn ngữ lập trình Python dùng để khai báo một biến và gán giá trị Hello cho nó?
A. declare my_variable = Hello
B. my_variable := Hello
C. let my_variable = Hello
D. my_variable = Hello