Trắc nghiệm Tin 10 Cánh diều Bài 1: Làm quen với ngôn ngữ lập trình bậc cao - Đề 05
Trắc nghiệm Tin 10 Cánh diều Bài 1: Làm quen với ngôn ngữ lập trình bậc cao - Đề 05 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!
Câu 1: Một lập trình viên mới bắt đầu học ngôn ngữ lập trình. Anh ấy muốn sử dụng một ngôn ngữ dễ đọc, gần gũi với ngôn ngữ tự nhiên và có thể chạy trên nhiều hệ điều hành khác nhau mà không cần cấu hình phức tạp. Ngôn ngữ lập trình nào trong Bài 1 Tin học 10 Cánh diều phù hợp nhất với yêu cầu này?
- A. Ngôn ngữ máy
- B. Hợp ngữ (Assembly)
- C. Python
- D. Code nhị phân
Câu 2: Khi viết chương trình bằng ngôn ngữ lập trình bậc cao, máy tính không thể hiểu và thực hiện trực tiếp mã nguồn đó. Cần có một loại chương trình đặc biệt để chuyển đổi mã nguồn này thành ngôn ngữ máy. Chương trình đó được gọi chung là gì?
- A. Chương trình dịch
- B. Hệ điều hành
- C. Trình soạn thảo văn bản
- D. Phần mềm ứng dụng
Câu 3: Một bạn học sinh viết chương trình Python để tính tổng hai số 5 và 3 rồi in kết quả ra màn hình. Bạn ấy viết `print(5 + 3)`. Khi chạy chương trình này, kết quả hiển thị trên màn hình sẽ là gì?
- A. 5 + 3
- B. (5 + 3)
- C. "5 + 3"
- D. 8
Câu 4: Xét đoạn mã Python sau:
```python
x = 10
y = 20
print(x + y)
```
Đoạn mã này thực hiện công việc gì?
- A. Gán giá trị 10 cho x và 20 cho y, sau đó in ra màn hình dòng chữ "x + y".
- B. Gán giá trị 10 cho x và 20 cho y, sau đó tính tổng x và y rồi in kết quả tổng ra màn hình.
- C. In ra màn hình giá trị của x và y.
- D. Báo lỗi cú pháp.
Câu 5: Trong Python, để in ra màn hình một dòng chữ cố định, ví dụ "Chao mung den voi Python!", dòng chữ đó cần được đặt trong cặp dấu nào?
- A. Cặp dấu ngoặc tròn `()`
- B. Cặp dấu ngoặc vuông `[]`
- C. Cặp dấu ngoặc nhọn `{}`
- D. Cặp dấu nháy đơn `""` hoặc nháy kép `
Câu 6: Một chương trình dịch có nhiệm vụ chuyển đổi toàn bộ mã nguồn của chương trình thành mã máy trước khi thực hiện. Loại chương trình dịch này được gọi là gì?
- A. Trình biên dịch (Compiler)
- B. Trình thông dịch (Interpreter)
- C. Trình gỡ lỗi (Debugger)
- D. Trình liên kết (Linker)
Câu 7: Python là một ngôn ngữ thông dịch. Điều này có nghĩa là gì?
- A. Toàn bộ mã nguồn được dịch sang mã máy trước khi chạy.
- B. Mã nguồn được dịch và thực hiện từng câu lệnh một.
- C. Mã nguồn được viết bằng ngôn ngữ tự nhiên.
- D. Chương trình chỉ có thể chạy trên một loại máy tính duy nhất.
Câu 8: So sánh ngôn ngữ lập trình bậc cao (như Python) và ngôn ngữ máy, phát biểu nào sau đây là ĐÚNG?
- A. Ngôn ngữ bậc cao dễ viết, dễ đọc hơn cho con người, trong khi ngôn ngữ máy là ngôn ngữ trực tiếp mà máy tính hiểu.
- B. Ngôn ngữ máy dễ viết, dễ đọc hơn cho con người, trong khi ngôn ngữ bậc cao là ngôn ngữ trực tiếp mà máy tính hiểu.
- C. Cả hai loại ngôn ngữ đều khó viết và máy tính không thể hiểu trực tiếp.
- D. Ngôn ngữ bậc cao chỉ dùng cho các ứng dụng đơn giản, còn ngôn ngữ máy dùng cho các ứng dụng phức tạp.
Câu 9: Môi trường làm việc nào của Python cho phép bạn gõ từng dòng lệnh và xem ngay kết quả thực hiện của dòng lệnh đó?
- A. Trình soạn thảo mã nguồn (Code Editor)
- B. Cửa sổ Output
- C. Chế độ tương tác (Interactive Mode) hay Shell
- D. Trình gỡ lỗi (Debugger)
Câu 10: Bạn muốn lưu lại một đoạn mã Python để có thể chạy nhiều lần sau này. Bạn nên viết mã đó ở đâu?
- A. Trong cửa sổ Shell và không cần lưu.
- B. Trong một tệp tin mã nguồn (ví dụ: `.py`) và chạy tệp tin đó.
- C. Chỉ có thể viết và chạy trực tiếp trong Shell.
- D. Trong bất kỳ tệp văn bản nào và đổi tên thành `.py`.
Câu 11: Xét hai câu lệnh Python sau:
1. `print("Hello")`
2. `Print("Hello")`
Câu lệnh nào là đúng cú pháp trong Python?
- A. Câu lệnh 1 đúng, câu lệnh 2 sai.
- B. Câu lệnh 2 đúng, câu lệnh 1 sai.
- C. Cả hai câu lệnh đều đúng.
- D. Cả hai câu lệnh đều sai.
Câu 12: Điều gì xảy ra nếu bạn chạy một chương trình Python có lỗi cú pháp (syntax error)?
- A. Chương trình sẽ chạy nhưng cho kết quả sai.
- B. Chương trình sẽ bỏ qua dòng lệnh bị lỗi và chạy các dòng khác.
- C. Python sẽ tự động sửa lỗi và chạy chương trình.
- D. Chương trình sẽ dừng lại và thông báo lỗi cú pháp.
Câu 13: Ngôn ngữ lập trình bậc cao nào được giới thiệu và sử dụng làm ví dụ chính trong Bài 1 sách Tin học 10 Cánh diều?
- A. Java
- B. C++
- C. Python
- D. JavaScript
Câu 14: Điểm khác biệt cơ bản nhất giữa trình biên dịch (compiler) và trình thông dịch (interpreter) là gì?
- A. Trình biên dịch dịch mã nguồn sang mã máy, còn trình thông dịch dịch mã nguồn sang ngôn ngữ khác.
- B. Trình biên dịch dịch toàn bộ chương trình trước khi chạy, còn trình thông dịch dịch và chạy từng câu lệnh.
- C. Trình thông dịch tạo ra tệp thực thi độc lập, còn trình biên dịch thì không.
- D. Trình biên dịch chỉ dùng cho ngôn ngữ bậc cao, còn trình thông dịch dùng cho ngôn ngữ bậc thấp.
Câu 15: Ngôn ngữ lập trình bậc cao giúp người lập trình tập trung vào giải quyết bài toán hơn là các chi tiết kỹ thuật phức tạp của máy tính. Điều này thể hiện ưu điểm nào của ngôn ngữ lập trình bậc cao?
- A. Tính trừu tượng hóa cao.
- B. Tốc độ thực thi nhanh hơn ngôn ngữ máy.
- C. Khả năng điều khiển trực tiếp phần cứng.
- D. Ít bị lỗi hơn ngôn ngữ máy.
Câu 16: Giả sử bạn muốn tính diện tích hình chữ nhật có chiều dài là 15 và chiều rộng là 7 bằng Python. Câu lệnh `print()` nào sau đây sẽ in ra kết quả đúng?
- A. print("15 * 7")
- B. print(15 7)
- C. print(15 * 7)
- D. print("dien tich")
Câu 17: Trong chế độ Shell của Python, bạn gõ lệnh `print("Viet Nam")`. Kết quả hiển thị ngay sau đó là gì?
- A. Viet Nam
- B. Viet Nam (sau khi nhấn Enter)
- C. "Viet Nam"
- D. Một thông báo lỗi
Câu 18: Ngôn ngữ lập trình nào được coi là ngôn ngữ duy nhất mà bộ vi xử lý của máy tính có thể hiểu và thực hiện trực tiếp mà không cần chương trình dịch?
- A. Ngôn ngữ bậc cao
- B. Hợp ngữ
- C. Python
- D. Ngôn ngữ máy
Câu 19: Hãy phân tích sự khác biệt chính giữa ngôn ngữ máy và hợp ngữ (Assembly).
- A. Ngôn ngữ máy dùng các chuỗi bit nhị phân, còn hợp ngữ dùng các từ gợi nhớ (mnemonic) thay thế các chuỗi bit đó.
- B. Ngôn ngữ máy cần chương trình dịch, còn hợp ngữ không cần chương trình dịch.
- C. Hợp ngữ dễ hiểu hơn ngôn ngữ bậc cao.
- D. Ngôn ngữ máy có thể chạy trên mọi loại máy tính, còn hợp ngữ chỉ chạy trên một loại máy cụ thể.
Câu 20: Bạn được giao nhiệm vụ viết một chương trình nhỏ để tự động hóa việc gửi email hàng loạt dựa trên danh sách có sẵn. Ngôn ngữ lập trình Python có phù hợp để thực hiện nhiệm vụ này không? Vì sao?
- A. Có, vì Python có nhiều thư viện hỗ trợ xử lý tệp tin và gửi email.
- B. Không, Python chỉ dùng để tính toán đơn giản.
- C. Không, chỉ có thể dùng ngôn ngữ máy để làm việc này.
- D. Chỉ phù hợp nếu làm thủ công, không thể tự động hóa.
Câu 21: Khi sử dụng câu lệnh `print()` để in ra nhiều giá trị (ví dụ: một chuỗi và một số) trên cùng một dòng, các giá trị này thường được ngăn cách với nhau bằng ký tự gì?
- A. Dấu chấm phẩy (;)
- B. Dấu phẩy (,)
- C. Dấu hai chấm (:)
- D. Dấu gạch ngang (-)
Câu 22: Xét đoạn mã Python:
```python
a = 5
b = 3
print("Tong la:", a + b)
```
Kết quả hiển thị trên màn hình khi chạy đoạn mã này là gì?
- A. Tong la: a + b
- B. 8
- C. Tong la: 8
- D. Báo lỗi
Câu 23: Ngôn ngữ lập trình bậc cao nào sau đây được thiết kế ban đầu bởi Guido van Rossum và ra mắt vào năm 1991?
- A. C
- B. Java
- C. JavaScript
- D. Python
Câu 24: Điều nào sau đây KHÔNG phải là lý do chính khiến ngôn ngữ lập trình bậc cao trở nên phổ biến và được sử dụng rộng rãi?
- A. Tốc độ thực thi luôn nhanh hơn ngôn ngữ máy.
- B. Dễ học và dễ viết mã hơn.
- C. Có thể chạy trên nhiều loại máy tính khác nhau (tính di động).
- D. Giúp người lập trình tập trung vào logic giải quyết vấn đề.
Câu 25: Một bạn viết chương trình Python trong một tệp tin và lưu lại. Để chạy chương trình này, bạn ấy cần làm gì?
- A. Mở tệp tin đó bằng trình soạn thảo văn bản bất kỳ.
- B. Sử dụng trình thông dịch Python để chạy tệp tin đó.
- C. Đổi tên tệp tin thành `.txt` và mở bằng trình duyệt web.
- D. Không cần làm gì, máy tính sẽ tự động chạy khi khởi động.
Câu 26: Ngôn ngữ lập trình bậc cao nào sau đây được biết đến với cấu trúc mã nguồn rõ ràng, dễ đọc và thường được ví von là "ngôn ngữ lập trình giả mã (pseudocode)"?
- A. C++
- B. Java
- C. Assembly
- D. Python
Câu 27: Khi bạn chạy một chương trình Python, trình thông dịch Python sẽ đọc và xử lý mã nguồn. Quá trình này bao gồm các bước chính nào?
- A. Đọc từng dòng lệnh, kiểm tra cú pháp, và thực hiện ngay nếu không có lỗi.
- B. Đọc toàn bộ mã nguồn, dịch sang mã máy, rồi thực hiện toàn bộ mã máy.
- C. Chỉ đọc các dòng lệnh có chứa từ khóa `print`.
- D. Bỏ qua các dòng lệnh bị lỗi và chỉ thực hiện các dòng đúng.
Câu 28: Một bạn học sinh muốn viết chương trình để tính chu vi hình tròn có bán kính r = 5. Công thức tính chu vi là `C = 2 * pi * r`. Biết rằng Python có thể sử dụng giá trị gần đúng của Pi là 3.14. Câu lệnh `print()` nào sau đây sẽ in ra chu vi của hình tròn đó?
- A. print("2 * 3.14 * 5")
- B. print(2 * 3.14 * 5)
- C. print("Chu vi la: 2 * 3.14 * 5")
- D. print("Chu vi la:", "2 * 3.14 * 5")
Câu 29: Chế độ tương tác (Shell) của Python rất hữu ích cho mục đích gì?
- A. Viết các chương trình lớn, phức tạp.
- B. Lưu trữ mã nguồn chương trình.
- C. Chỉ chạy các chương trình đã được biên dịch.
- D. Thử nghiệm nhanh các câu lệnh hoặc biểu thức đơn giản.
Câu 30: Tại sao Python được sử dụng rộng rãi trong nhiều lĩnh vực như phát triển web, khoa học dữ liệu, trí tuệ nhân tạo, tự động hóa?
- A. Vì Python là ngôn ngữ lập trình duy nhất có thể làm được các việc đó.
- B. Vì Python là ngôn ngữ máy, chạy rất nhanh.
- C. Vì Python có cú pháp đơn giản, dễ học, cộng đồng lớn và hệ sinh thái thư viện phong phú.
- D. Vì Python chỉ chạy được trên các siêu máy tính.