1. Trong cơ sở dữ liệu quan hệ, khóa chính (Primary Key) có vai trò gì?
A. Liên kết hai bảng với nhau.
B. Đảm bảo mỗi bản ghi trong bảng là duy nhất và có thể truy cập được.
C. Xác định các thuộc tính không quan trọng của bảng.
D. Lưu trữ dữ liệu tạm thời cho các truy vấn.
2. Trong lập trình hướng đối tượng, khái niệm "kế thừa" (inheritance) cho phép điều gì?
A. Một lớp có thể có nhiều lớp cha.
B. Một lớp mới có thể nhận các thuộc tính và phương thức từ một lớp đã có.
C. Một đối tượng có thể thay đổi hành vi của nó một cách linh hoạt.
D. Tạo ra các lớp độc lập hoàn toàn với nhau.
3. Thuộc tính "display" trong CSS có giá trị "flex" dùng để làm gì?
A. Tạo ra các phần tử hiển thị theo dạng khối, chiếm toàn bộ chiều rộng có sẵn.
B. Tạo ra các phần tử hiển thị nội tuyến, chỉ chiếm không gian cần thiết.
C. Thiết lập một container flexbox để sắp xếp các mục con theo một hàng hoặc một cột.
D. Ẩn hoàn toàn một phần tử khỏi trang web.
4. Mục đích chính của việc sử dụng câu lệnh "JOIN" trong SQL là gì?
A. Để thêm dữ liệu mới vào bảng.
B. Để xóa dữ liệu khỏi bảng.
C. Để kết hợp các hàng từ hai hoặc nhiều bảng dựa trên một cột liên quan.
D. Để cập nhật dữ liệu hiện có trong bảng.
5. Trong lập trình web, thẻ HTML nào được sử dụng để tạo một danh sách không có thứ tự (unordered list)?
6. Đâu là phát biểu SAI về khái niệm "thuật toán"?
A. Thuật toán là một tập hợp hữu hạn các chỉ dẫn rõ ràng, có trình tự để giải quyết một vấn đề hoặc thực hiện một nhiệm vụ.
B. Mỗi bước trong thuật toán phải có thể thực hiện được và không gây mơ hồ.
C. Thuật toán có thể có vô số bước thực hiện và không cần kết thúc.
D. Thuật toán cần có đầu vào (input) và đầu ra (output) xác định.
7. Trong lập trình, một "vòng lặp vô hạn" (infinite loop) xảy ra khi nào?
A. Khi điều kiện dừng của vòng lặp luôn đúng.
B. Khi điều kiện bắt đầu của vòng lặp luôn đúng.
C. Khi vòng lặp thực hiện đúng một lần.
D. Khi vòng lặp được đặt tên sai.
8. Đâu là phát biểu SAI về "lập trình web" (web programming)?
A. Lập trình web bao gồm cả phát triển giao diện người dùng (frontend) và logic phía máy chủ (backend).
B. HTML và CSS chủ yếu được sử dụng cho phát triển frontend.
C. JavaScript chỉ có thể chạy trên máy chủ.
D. Các ngôn ngữ backend phổ biến bao gồm Python, Java, PHP và Node.js.
9. Đâu là phát biểu SAI về thuộc tính "border-collapse" trong CSS?
A. Thuộc tính "border-collapse" quy định liệu các đường viền của các ô liền kề trong bảng có được gộp lại thành một đường viền duy nhất hay không.
B. Giá trị "collapse" làm cho các đường viền của các ô liền kề gộp lại thành một đường viền duy nhất.
C. Giá trị "separate" làm cho các đường viền của các ô liền kề tách biệt và có thể có khoảng cách giữa chúng.
D. Thuộc tính "border-collapse" chỉ áp dụng được cho các thẻ "div" trong HTML.
10. Trong các ngôn ngữ lập trình phổ biến, cú pháp nào sau đây thường được sử dụng để khai báo một biến và gán giá trị?
A. var tenBien = giaTri;
B. let tenBien: kiemTra = giaTri;
C. tenBien = giaTri
D. tenBien := giaTri
11. Đâu là phát biểu SAI về "mã hóa" (encryption) trong an toàn thông tin?
A. Mã hóa là quá trình chuyển đổi thông tin thành một dạng không thể đọc được nếu không có khóa giải mã phù hợp.
B. Mục đích của mã hóa là đảm bảo tính bảo mật và toàn vẹn của dữ liệu.
C. Mã hóa đối xứng và mã hóa bất đối xứng là hai phương pháp mã hóa phổ biến.
D. Mã hóa chỉ cần thiết cho các giao dịch tài chính trực tuyến.
12. Trong ngôn ngữ lập trình Python, cấu trúc dữ liệu nào sau đây được sử dụng để lưu trữ một tập hợp các phần tử có thứ tự và có thể thay đổi?
A. Tuple
B. Set
C. List
D. Dictionary
13. Đâu là phát biểu SAI về thuộc tính "float" trong CSS?
A. Thuộc tính "float" cho phép một phần tử nổi lên bên trái hoặc bên phải của phần tử chứa nó.
B. Các phần tử khác sẽ bao quanh phần tử được áp dụng "float".
C. Giá trị "float: left" sẽ làm phần tử trôi về bên trái.
D. Thuộc tính "float" sẽ luôn giữ nguyên luồng tài liệu bình thường của các phần tử.
14. Trong lập trình, điều kiện dừng (stopping condition) của một vòng lặp là gì?
A. Điều kiện để bắt đầu vòng lặp.
B. Điều kiện để thực thi khối lệnh bên trong vòng lặp.
C. Điều kiện mà khi nó được thỏa mãn, vòng lặp sẽ kết thúc.
D. Điều kiện để lặp lại vòng lặp vô hạn.
15. Đâu là phát biểu SAI về "máy chủ web" (web server)?
A. Máy chủ web là phần mềm hoặc phần cứng xử lý các yêu cầu từ trình duyệt web và gửi lại các trang web.
B. Máy chủ web lưu trữ các tệp tin của một trang web (HTML, CSS, JavaScript, hình ảnh, v.v.).
C. Máy chủ web chỉ có thể phục vụ một yêu cầu tại một thời điểm.
D. Các máy chủ web phổ biến bao gồm Apache, Nginx, và Microsoft IIS.
16. Trong ngôn ngữ SQL, loại "JOIN" nào sau đây trả về tất cả các hàng từ bảng bên trái và các hàng khớp từ bảng bên phải, với NULL cho các hàng không có khớp?
A. INNER JOIN
B. LEFT JOIN
C. RIGHT JOIN
D. FULL OUTER JOIN
17. Mục đích chính của việc sử dụng thẻ "meta" trong phần đầu của tài liệu HTML là gì?
A. Để định dạng văn bản và bố cục trang web.
B. Để cung cấp siêu dữ liệu (metadata) về tài liệu HTML cho trình duyệt và các công cụ tìm kiếm.
C. Để tạo các liên kết nội bộ giữa các phần của trang web.
D. Để nhúng các đoạn mã JavaScript thực thi các hành động trên trang.
18. Trong CSS, thuộc tính "position" với giá trị "relative" có ý nghĩa gì?
A. Phần tử sẽ được định vị dựa trên khung nhìn của trình duyệt.
B. Phần tử sẽ được định vị dựa trên phần tử cha gần nhất có "position" khác "static".
C. Phần tử sẽ được định vị dựa trên vị trí bình thường của nó trong luồng tài liệu, và có thể dịch chuyển bằng "top", "bottom", "left", "right".
D. Phần tử sẽ bị loại bỏ khỏi luồng tài liệu và định vị dựa trên trang.
19. Khi làm việc với các tệp văn bản trong lập trình, hàm nào sau đây thường được sử dụng để đọc toàn bộ nội dung của một tệp thành một chuỗi duy nhất?
A. read()
B. readline()
C. readlines()
D. write()
20. Đâu là phát biểu SAI về giao thức HTTP (Hypertext Transfer Protocol)?
A. HTTP là giao thức truyền tải siêu văn bản giữa máy khách và máy chủ.
B. HTTP là một giao thức không trạng thái (stateless), có nghĩa là mỗi yêu cầu là độc lập và không nhớ trạng thái của các yêu cầu trước đó.
C. Phiên bản mới nhất của HTTP là HTTP/1.1, còn HTTP/2 và HTTP/3 đã được phát triển và sử dụng rộng rãi.
D. HTTP sử dụng cổng mặc định là 21 để truyền tải dữ liệu.
21. Đâu là phát biểu SAI về "biến" trong lập trình?
A. Biến là một định danh đại diện cho một giá trị trong bộ nhớ máy tính.
B. Giá trị của biến có thể thay đổi trong quá trình thực thi chương trình.
C. Mỗi biến cần được khai báo với một kiểu dữ liệu cụ thể trước khi sử dụng trong mọi ngôn ngữ lập trình.
D. Việc đặt tên biến cần tuân thủ các quy tắc của ngôn ngữ lập trình.
22. Trong HTML, thuộc tính "href" của thẻ "a" được sử dụng để làm gì?
A. Xác định văn bản hiển thị của liên kết.
B. Chỉ định địa chỉ URL của trang đích mà liên kết sẽ trỏ tới.
C. Thiết lập kiểu chữ cho văn bản liên kết.
D. Mở liên kết trong một cửa sổ mới.
23. Trong Python, hàm "print()" được sử dụng để làm gì?
A. Đọc dữ liệu từ bàn phím.
B. Thực hiện các phép tính toán học.
C. Hiển thị dữ liệu ra màn hình console.
D. Định nghĩa một hàm mới.
24. Trong lập trình, "hàm" (function) hoặc "phương thức" (method) được sử dụng để làm gì?
A. Lưu trữ dữ liệu tạm thời.
B. Thực hiện một khối mã cụ thể có thể được gọi lại nhiều lần.
C. Xác định kiểu dữ liệu của biến.
D. Tạo ra các lớp mới.
25. Trong ngôn ngữ SQL, câu lệnh nào sau đây được sử dụng để lấy dữ liệu từ một hoặc nhiều bảng?
A. INSERT
B. UPDATE
C. DELETE
D. SELECT