Trắc nghiệm Tin học 10 Kết nối tri thức Chủ đề 5: Giải quyết vấn đề với sự trợ giúp của máy tính - Đề 02
Trắc nghiệm Tin học 10 Kết nối tri thức Chủ đề 5: Giải quyết vấn đề với sự trợ giúp của máy tính - Đề 02 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.
Câu 1: Ngôn ngữ lập trình bậc cao ra đời nhằm mục đích chủ yếu nào sau đây?
- A. Giúp máy tính hiểu trực tiếp mã lệnh mà không cần phiên dịch.
- B. Giúp con người viết chương trình gần với ngôn ngữ tự nhiên và dễ hiểu hơn.
- C. Tăng tốc độ xử lý của máy tính lên gấp nhiều lần.
- D. Giảm kích thước bộ nhớ cần thiết để lưu trữ chương trình.
Câu 2: Xét đoạn code Python sau:
```python
x = 10
y = x + 5
x = 20
print(y)
```
Kết quả in ra màn hình là bao nhiêu?
- A. 25
- B. 20
- C. 15
- D. Báo lỗi
Câu 3: Để nhận dữ liệu từ bàn phím và gán cho một biến trong Python, ta sử dụng hàm nào?
- A. input()
- B. print()
- C. get()
- D. read()
Câu 4: Kiểu dữ liệu mặc định của giá trị trả về từ hàm `input()` trong Python là gì?
- A. int
- B. str
- C. float
- D. bool
Câu 5: Xét đoạn code Python:
```python
a = 5
b = 10
if a > b:
print(
- A. a lon hon b
- B. a bang b
- C. Không in ra gì
- D. a nho hon b
Câu 6: Câu lệnh `if` trong Python được sử dụng để làm gì?
- A. Thực hiện một khối lệnh lặp đi lặp lại.
- B. Định nghĩa một hàm mới.
- C. Thực hiện một khối lệnh chỉ khi một điều kiện nhất định đúng.
- D. Gán giá trị cho một biến.
Câu 7: Xét đoạn code Python:
```python
for i in range(3):
print(i)
```
Kết quả in ra màn hình là gì?
- A. 1
2
3
- B. 0
1
2
- C. 0
1
2
3
- D. Báo lỗi
Câu 8: Vòng lặp `for` trong Python thường được sử dụng khi nào?
- A. Khi bạn biết trước số lần lặp hoặc cần lặp qua các phần tử của một tập hợp (chuỗi, danh sách, range...).
- B. Khi bạn muốn lặp cho đến khi một điều kiện nào đó sai.
- C. Khi bạn cần định nghĩa một khối lệnh con có thể tái sử dụng.
- D. Khi bạn cần gán giá trị cho nhiều biến cùng lúc.
Câu 9: Xét đoạn code Python:
```python
count = 0
while count < 3:
print(
- A. 0 lần
- B. 2 lần
- C. 3 lần
- D. Vô hạn lần
Câu 10: Vòng lặp `while` trong Python thường được sử dụng khi nào?
- A. Khi bạn cần lặp qua các phần tử của một danh sách.
- B. Khi bạn muốn lặp cho đến khi một điều kiện nào đó không còn đúng nữa, và bạn không biết trước số lần lặp cụ thể.
- C. Khi bạn cần thực hiện một khối lệnh chỉ một lần.
- D. Khi bạn cần khai báo một biến mới.
Câu 11: Kiểu dữ liệu danh sách (list) trong Python có đặc điểm gì?
- A. Là một tập hợp các phần tử có thứ tự, có thể chứa các kiểu dữ liệu khác nhau và có thể thay đổi (mutable).
- B. Là một tập hợp các phần tử không có thứ tự và không thể thay đổi (immutable).
- C. Là một tập hợp các phần tử chỉ chứa các số nguyên và không thể thay đổi.
- D. Chỉ có thể lưu trữ các giá trị True/False.
Câu 12: Xét danh sách Python sau:
```python
my_list = [1, 2, 3, 4, 5]
print(my_list[1:4])
```
Kết quả in ra màn hình là gì?
- A. [1, 2, 3]
- B. [1, 2, 3, 4]
- C. [2, 3, 4, 5]
- D. [2, 3, 4]
Câu 13: Để thêm một phần tử mới vào cuối danh sách `my_list` trong Python, ta sử dụng phương thức nào?
- A. my_list.append(phan_tu_moi)
- B. my_list.insert(phan_tu_moi)
- C. my_list.add(phan_tu_moi)
- D. my_list.push(phan_tu_moi)
Câu 14: Kiểu dữ liệu xâu kí tự (string) trong Python có đặc điểm gì?
- A. Là một tập hợp các kí tự có thể thay đổi được.
- B. Là một chuỗi các kí tự có thứ tự và không thể thay đổi (immutable).
- C. Chỉ có thể chứa các chữ cái và số.
- D. Được định nghĩa bằng dấu ngoặc vuông [].
Câu 15: Xét đoạn code Python:
```python
my_string =
- A. World
- B. World!
- C. World
- D. o Wor
Câu 16: Để chuyển đổi tất cả các kí tự trong một xâu sang chữ thường trong Python, ta sử dụng phương thức nào?
- A. lower_case()
- B. to_lower()
- C. casefold()
- D. lower()
Câu 17: Mục đích chính của việc sử dụng hàm (function) trong lập trình là gì?
- A. Tổ chức mã nguồn thành các khối logic, tăng khả năng tái sử dụng và dễ quản lý.
- B. Bắt buộc người dùng nhập dữ liệu từ bàn phím.
- C. Chỉ dùng để in kết quả ra màn hình.
- D. Khai báo các biến toàn cục.
Câu 18: Xét đoạn code Python:
```python
def greet(name):
print(
- A. Xin chao
- B. Xin chao, An
- C. greet(
- D. Báo lỗi
Câu 19: Tham số của hàm là gì?
- A. Tên của hàm.
- B. Giá trị mà hàm trả về.
- C. Các biến được định nghĩa trong dấu ngoặc đơn khi khai báo hàm, dùng để nhận giá trị từ bên ngoài khi hàm được gọi.
- D. Các câu lệnh bên trong thân hàm.
Câu 20: Xét đoạn code Python:
```python
def add(a, b):
return a + b
result = add(5, 3)
print(result)
```
Kết quả in ra màn hình là bao nhiêu?
- A. 8
- B. 5 + 3
- C. add(5, 3)
- D. Báo lỗi
Câu 21: Biến cục bộ (local variable) trong Python là gì?
- A. Biến được khai báo bên ngoài tất cả các hàm và có thể truy cập từ bất kỳ đâu trong chương trình.
- B. Biến chỉ có thể chứa các số nguyên.
- C. Biến có giá trị không đổi trong suốt chương trình.
- D. Biến được khai báo bên trong một hàm và chỉ có thể truy cập được trong phạm vi của hàm đó.
Câu 22: Xét đoạn code Python:
```python
x = 10 # Biến toàn cục
def my_function():
y = 5 # Biến cục bộ
print(x + y)
my_function()
# print(y) # Lệnh này sẽ gây lỗi
```
Khi chạy đoạn code trên (không tính dòng bị chú thích), kết quả in ra màn hình là bao nhiêu?
- A. 15
- B. 10
- C. 5
- D. Báo lỗi (vì y không được định nghĩa ở ngoài hàm)
Câu 23: Lỗi cú pháp (Syntax Error) trong lập trình là gì?
- A. Lỗi xảy ra khi mã nguồn vi phạm các quy tắc ngữ pháp của ngôn ngữ lập trình, ngăn cản chương trình được dịch hoặc chạy.
- B. Lỗi xảy ra khi chương trình đang chạy do thực hiện một thao tác không hợp lệ (ví dụ: chia cho 0).
- C. Lỗi xảy ra khi chương trình chạy đúng cú pháp và không gặp lỗi lúc chạy, nhưng kết quả không như mong đợi.
- D. Lỗi do phần cứng máy tính gây ra.
Câu 24: Xét đoạn code Python:
```python
num = input(
- A. Syntax Error
- B. Runtime Error (ví dụ: TypeError)
- C. Semantic Error
- D. Không có lỗi xảy ra
Câu 25: Lỗi ngữ nghĩa (Semantic Error) trong lập trình là gì?
- A. Lỗi về chính tả hoặc dấu câu trong mã nguồn.
- B. Lỗi khiến chương trình dừng đột ngột khi đang chạy.
- C. Lỗi khiến chương trình chạy mà không báo lỗi, nhưng kết quả đầu ra không đúng với yêu cầu bài toán.
- D. Lỗi liên quan đến kết nối mạng.
Câu 26: Quy trình kiểm thử (testing) chương trình nhằm mục đích chủ yếu gì?
- A. Tìm kiếm và phát hiện lỗi trong chương trình.
- B. Viết mã nguồn chương trình.
- C. Biên dịch mã nguồn thành mã máy.
- D. Tăng tốc độ thực thi của chương trình.
Câu 27: Khi gỡ lỗi (debugging) một chương trình, bước đầu tiên quan trọng thường là gì?
- A. Viết lại toàn bộ chương trình từ đầu.
- B. Thêm các câu lệnh `print` vào khắp nơi trong code một cách ngẫu nhiên.
- C. Chạy chương trình với tất cả các dữ liệu đầu vào có thể có.
- D. Xác định chính xác lỗi xảy ra ở đâu và loại lỗi là gì.
Câu 28: Xét bài toán: Tính tổng các số nguyên từ 1 đến N, với N là số nguyên dương nhập từ bàn phím. Cấu trúc lặp nào (for hoặc while) phù hợp nhất để giải quyết bài toán này khi bạn biết trước số lần lặp (chính là N)?
- A. Vòng lặp `for`.
- B. Vòng lặp `while`.
- C. Cả hai vòng lặp đều không phù hợp.
- D. Chỉ có thể dùng câu lệnh điều kiện `if`.
Câu 29: Xét bài toán: Đọc dữ liệu từ một file cho đến khi gặp dòng trống đầu tiên. Cấu trúc lặp nào (for hoặc while) phù hợp nhất để giải quyết bài toán này khi bạn không biết trước số dòng cần đọc?
- A. Vòng lặp `for`.
- B. Vòng lặp `while`.
- C. Chỉ có thể dùng câu lệnh điều kiện `if`.
- D. Không cần sử dụng cấu trúc lặp.
Câu 30: Khi thiết kế giải pháp cho một vấn đề bằng máy tính, bước nào sau đây thường là bước đầu tiên?
- A. Phân tích bài toán và xác định rõ yêu cầu, dữ liệu đầu vào, đầu ra.
- B. Viết code chương trình ngay lập tức.
- C. Kiểm thử chương trình.
- D. Xuất bản chương trình.