Kiểm tra giữa kỳ Buổi 1: Ngôn ngữ lập trình và Thuật toán
Exam info
- Subject
- Lập trình căn bản
- Exam type
- University
- Questions
- 20
- Duration
- 45 min
- Year
- 2026
- Answers
- ✓ With explanations
Questions (20)
- Q 1.
Theo nội dung học phần, ngôn ngữ lập trình là gì?
- A.
Một hệ thống ký hiệu và quy tắc ngữ pháp dùng để viết các chỉ thị mà máy tính có thể hiểu và thực hiện.
- B.
Tập hợp các linh kiện điện tử tạo nên phần cứng của máy tính.
- C.
Một chương trình dùng để quản lý và lưu trữ dữ liệu theo cơ sở dữ liệu quan hệ.
- D.
Phần mềm chuyên dụng chuyển mã nguồn thành mã máy hoặc thực hiện từng câu lệnh.
- A.
- Q 2.
Vai trò nào sau đây phù hợp nhất với ngôn ngữ lập trình trong quá trình giải quyết vấn đề?
- A.
Làm cầu nối giữa tư duy giải quyết vấn đề của con người và khả năng xử lý của máy tính.
- B.
Thay thế hoàn toàn nhu cầu thiết kế và kiểm thử phần mềm.
- C.
Chỉ dùng để trình bày nội dung văn bản trên máy tính.
- D.
Chỉ cung cấp giao diện đồ họa cho các ứng dụng.
- A.
- Q 3.
Ngôn ngữ nào thuộc thế hệ ngôn ngữ máy?
- A.
Ngôn ngữ C
- B.
Hợp ngữ Assembly
- C.
Mã nhị phân của từng loại CPU
- D.
Ngôn ngữ Python
- A.
- Q 4.
Đặc điểm nào phân biệt rõ hợp ngữ với ngôn ngữ máy?
- A.
Hợp ngữ sử dụng ký hiệu gợi nhớ thay cho mã nhị phân.
- B.
Hợp ngữ không cần bất kỳ chương trình dịch nào.
- C.
Hợp ngữ gần với ngôn ngữ tự nhiên hơn ngôn ngữ bậc cao.
- D.
Hợp ngữ chạy trực tiếp mà không cần biên dịch hoặc hợp dịch.
- A.
- Q 5.
Câu lệnh
printf("Hello World");thuộc nhóm ngôn ngữ nào?- A.
Ngôn ngữ máy
- B.
Hợp ngữ
- C.
Ngôn ngữ bậc cao
- D.
Ngôn ngữ đánh dấu HTML
- A.
- Q 6.
Ngôn ngữ C được xếp vào nhóm ngôn ngữ nào theo cấp độ?
- A.
Ngôn ngữ máy
- B.
Hợp ngữ
- C.
Ngôn ngữ bậc cao
- D.
Ngôn ngữ không cần chương trình dịch
- A.
- Q 7.
Lập trình cấu trúc tổ chức chương trình chủ yếu theo cách nào?
- A.
Xây dựng chương trình từ các đối tượng có thuộc tính và phương thức.
- B.
Xây dựng chương trình từ các hàm toán học.
- C.
Dùng dãy lệnh tuần tự, rẽ nhánh, lặp và chia nhỏ chương trình bằng hàm hoặc thủ tục.
- D.
Chỉ viết chương trình bằng mã nhị phân.
- A.
- Q 8.
Ngôn ngữ nào sau đây thường được dùng để minh họa cho lập trình hướng đối tượng trong bài giảng?
- A.
C++
- B.
Haskell
- C.
Pascal
- D.
MASM
- A.
- Q 9.
Học phần Lập trình căn bản tập trung rèn tư duy lập trình nào?
- A.
Lập trình hướng đối tượng
- B.
Lập trình hàm
- C.
Lập trình cấu trúc bằng ngôn ngữ C
- D.
Lập trình sinh tự động
- A.
- Q 10.
Đặc điểm nào phân biệt trình biên dịch với trình thông dịch?
- A.
Trình biên dịch dịch toàn bộ mã nguồn trước khi tạo chương trình thực thi.
- B.
Trình thông dịch tạo tệp thực thi hoàn chỉnh trước mỗi lần chạy.
- C.
Trình biên dịch chỉ dùng với ngôn ngữ máy.
- D.
Trình thông dịch luôn tạo ra mã đối tượng trước khi chạy.
- A.
- Q 11.
Ngôn ngữ C thường được thực thi bằng loại trình dịch nào?
- A.
Trình biên dịch, chẳng hạn GCC
- B.
Trình thông dịch Python
- C.
Trình soạn thảo văn bản
- D.
Bộ gõ bàn phím
- A.
- Q 12.
Ưu điểm thường được nêu của trình biên dịch so với trình thông dịch là gì?
- A.
Chương trình chạy nhanh hơn vì không phải dịch lại trong mỗi lần chạy.
- B.
Không cần kiểm tra lỗi cú pháp mã nguồn.
- C.
Không cần liên kết thư viện và các đối tượng.
- D.
Luôn tạo ra một tệp thực thi duy nhất cho mọi hệ điều hành.
- A.
- Q 13.
Trong quá trình biên dịch chương trình C, bước tiền xử lý chủ yếu xử lý những gì?
- A.
Các chỉ thị #include và #define
- B.
Liên kết các thư viện và tạo tệp thực thi
- C.
Chuyển mã nguồn thành mã đối tượng
- D.
Thực thi từng câu lệnh của chương trình
- A.
- Q 14.
Trong quy trình biên dịch C, tệp mã đối tượng thường có phần mở rộng nào trên hệ thống được nêu trong bài giảng?
- A.
.o
- B.
.exe
- C.
.py
- D.
.asm
- A.
- Q 15.
Sau bước hợp dịch, tệp mã đối tượng cần được xử lý ở bước nào để tạo chương trình chạy được?
- A.
Tiền xử lý
- B.
Biên dịch
- C.
Liên kết
- D.
Thông dịch từng câu lệnh
- A.
- Q 16.
Thuật toán được mô tả chính xác nhất là gì?
- A.
Một dãy hữu hạn các bước có trình tự xác định để biến dữ liệu đầu vào thành kết quả đầu ra mong muốn.
- B.
Một tập hợp dữ liệu không có thứ tự dùng làm đầu vào của chương trình.
- C.
Một ngôn ngữ lập trình dùng để biểu diễn thuật toán.
- D.
Một chương trình đã được biên dịch và liên kết hoàn chỉnh.
- A.
- Q 17.
Đặc trưng nào yêu cầu thuật toán phải kết thúc sau một số hữu hạn bước?
- A.
Tính xác định
- B.
Tính hữu hạn
- C.
Tính đúng đắn
- D.
Tính phổ dụng
- A.
- Q 18.
Một thuật toán được xem là hiệu quả khi đáp ứng điều gì?
- A.
Mỗi bước đều có thể thực hiện khả thi trong thời gian hữu hạn.
- B.
Chương trình phải sử dụng đúng ngôn ngữ C.
- C.
Mỗi bước phải được viết bằng ký hiệu gợi nhớ.
- D.
Thuật toán chỉ được dùng cho bài toán có một trường hợp duy nhất.
- A.
- Q 19.
Một thuật toán có tính đúng đắn khi nào?
- A.
Khi các bước được viết bằng ngôn ngữ bậc cao.
- B.
Khi thuật toán cho kết quả đúng với yêu cầu của bài toán.
- C.
Khi thuật toán không sử dụng vòng lặp.
- D.
Khi thuật toán có số bước càng nhiều càng tốt.
- A.
- Q 20.
Thuật toán nhận dữ liệu đầu vào và tạo ra kết quả đầu ra. Mối liên hệ nào phù hợp nhất với ví dụ về thuật toán tính tổng các số trong một dãy?
- A.
Dữ liệu đầu vào là các số của dãy; kết quả đầu ra là tổng của các số đó.
- B.
Dữ liệu đầu vào là tổng của dãy; kết quả đầu ra là các số trong dãy.
- C.
Dữ liệu đầu vào và kết quả đầu ra đều là mã nguồn của chương trình.
- D.
Dữ liệu đầu vào là tệp thực thi; kết quả đầu ra là mã đối tượng.
- A.
Answers and explanations are in mode.