Bài kiểm tra trắc nghiệm môn Lập trình Python
Exam info
- Subject
- Lập trình Python
- Exam type
- University
- Questions
- 50
- Duration
- 100 min
- Answers
- ✓ With explanations
Questions (50)
- Q 1.
Trong phân tích bài toán, một đặc tả (specification) chủ yếu mô tả điều gì?
- A.
Mối quan hệ giữa các đầu vào hợp lệ và đầu ra tương ứng
- B.
Các bước xử lý được viết bằng một ngôn ngữ lập trình cụ thể
- C.
Cú pháp và quy tắc của ngôn ngữ Python
- D.
Quá trình tìm kiếm và khắc phục lỗi trong chương trình
- A.
- Q 2.
Câu nào mô tả đúng nhất về thuật toán?
- A.
Là cách thể hiện quan hệ giữa đầu vào và đầu ra của một bài toán
- B.
Là tập hữu hạn các hướng dẫn rõ ràng và tuần tự để chuyển đầu vào thành đầu ra đúng
- C.
Là tập hợp các thông báo lỗi phát sinh khi chạy chương trình
- D.
Là danh sách các ngôn ngữ lập trình có thể dùng để giải bài toán
- A.
- Q 3.
Đặc tính nào sau đây không thuộc các tính chất cần có của một thuật toán?
- A.
Có thể tiếp tục chạy vô hạn mà không kết thúc
- B.
Các bước được xác định rõ ràng
- C.
Cho kết quả đúng với mọi đầu vào hợp lệ
- D.
Có thể áp dụng cho mọi trường hợp thuộc phạm vi bài toán
- A.
- Q 4.
Ưu điểm nổi bật của mã giả khi biểu diễn thuật toán là gì?
- A.
Không cần sử dụng bất kỳ cấu trúc điều khiển nào
- B.
Có thể được thực thi trực tiếp bởi máy tính
- C.
Gần với ngôn ngữ lập trình nhưng không phụ thuộc vào một ngôn ngữ cụ thể
- D.
Luôn ngắn gọn hơn mọi dạng biểu diễn thuật toán khác
- A.
- Q 5.
Sau bước phân tích vấn đề, bước tiếp theo phù hợp trong quy trình xây dựng chương trình là gì?
- A.
Triển khai ngay chương trình lên máy chủ thật
- B.
Thiết kế thuật toán bằng lệnh liệt kê, sơ đồ khối hoặc mã giả
- C.
Xóa toàn bộ chú thích trong tài liệu yêu cầu
- D.
Chỉ sử dụng thư viện ngoài để viết chương trình
- A.
- Q 6.
Mục đích chính của việc xác định điều kiện biên khi phân tích bài toán là gì?
- A.
Làm cho chương trình không cần kiểm thử
- B.
Giảm số biến có thể sử dụng trong chương trình
- C.
Đảm bảo chương trình không bao giờ phát sinh ngoại lệ
- D.
Giới hạn phạm vi đầu vào hợp lệ và giúp phát hiện lỗi logic sớm
- A.
- Q 7.
Vì sao cần chạy thử chương trình với nhiều bộ dữ liệu khác nhau?
- A.
Để phát hiện và khắc phục cả lỗi cú pháp lẫn lỗi logic
- B.
Để chứng minh chương trình không cần mô tả thuật toán
- C.
Để tự động thay thế hoàn toàn việc lập trình
- D.
Để bảo đảm mọi chương trình đều không có lỗi
- A.
- Q 8.
Mô tả nào phù hợp nhất về Python?
- A.
Ngôn ngữ cấp thấp, chỉ biểu diễn được các phép toán số
- B.
Ngôn ngữ biên dịch không cần trình thông dịch để thực thi
- C.
Ngôn ngữ bậc cao, thông dịch, hỗ trợ cả lập trình hướng thủ tục và hướng đối tượng
- D.
Ngôn ngữ không hỗ trợ module, package hoặc xử lý ngoại lệ
- A.
- Q 9.
Tên biến nào sau đây hợp lệ theo quy tắc đặt tên biến trong Python?
- A.
2tong_hop
- B.
tong_hop_2024
- C.
tong-hop
- D.
class
- A.
- Q 10.
Điều gì xảy ra khi chương trình có cả
Tongvàtong?- A.
Python tự động đổi một tên thành chữ thường
- B.
Hai tên luôn được xem là một biến duy nhất
- C.
Chương trình chắc chắn báo lỗi cú pháp
- D.
Hai tên được xem là hai biến khác nhau vì Python phân biệt chữ hoa và chữ thường
- A.
- Q 11.
Sau lệnh
ten = input('Nhập tên: '), kiểu dữ liệu thông thường củatenlà gì?- A.
Chuỗi ký tự
- B.
Số nguyên
- C.
Số thực
- D.
Danh sách các từ đã nhập
- A.
- Q 12.
Giá trị của biểu thức
17 // 5trong Python là gì?- A.
3.4
- B.
4
- C.
3
- D.
Chương trình báo lỗi cú pháp
- A.
- Q 13.
Biểu thức
2 ** 3có giá trị là gì?- A.
6
- B.
8
- C.
5
- D.
9
- A.
- Q 14.
Cho đoạn mã
a = 10vàa += 5. Sau đó,acó giá trị bằng bao nhiêu?- A.
5
- B.
10
- C.
50
- D.
15
- A.
- Q 15.
Nếu đã import thư viện
math, biểu thứcmath.sqrt(16)trả về giá trị nào?- A.
4.0
- B.
256.0
- C.
8.0
- D.
16
- A.
- Q 16.
Điều nào cần làm khi muốn thêm một chú thích giải thích mã nguồn trên cùng một dòng?
- A.
Đặt phần cần giải thích trong dấu nháy kép
- B.
Thêm ký tự
!trước nội dung - C.
Đặt ký tự
#trước nội dung cần chú thích - D.
Ghi nội dung trong một hàm
comment()
- A.
- Q 17.
Khi điều kiện của lệnh
iflà sai, phần lệnh nằm trong khốiifsẽ được xử lý như thế nào?- A.
Được thực thi một lần dù điều kiện sai
- B.
Bị bỏ qua
- C.
Tự động chuyển thành khối
else - D.
Luôn làm chương trình dừng lại
- A.
- Q 18.
Trong cấu trúc
if ... elif ... else, điều gì xảy ra nếu nhiều điều kiện đều đúng?- A.
Tất cả các nhánh đúng đều được thực thi
- B.
Không nhánh nào được thực thi
- C.
Chương trình luôn báo lỗi cú pháp
- D.
Chỉ nhánh có điều kiện đúng đầu tiên được thực thi
- A.
- Q 19.
Giá trị của biểu thức
not (3 > 5)là gì?- A.
True
- B.
False
- C.
0
- D.
Không có giá trị
- A.
- Q 20.
Cho
x = 7vày = 3. Biểu thức'lon' if x > y else 'nho'trả về kết quả nào?- A.
nho - B.
Không có kết quả vì điều kiện phải là số
- C.
lon - D.
True
- A.
- Q 21.
Điều gì là điều kiện cần có để một đối tượng có thể được dùng trong vòng lặp
for?- A.
Đối tượng phải là một số nguyên
- B.
Đối tượng phải là iterable, tức là có thể cung cấp các phần tử theo thứ tự lặp
- C.
Đối tượng phản hồi giá trị True khi được truyền vào
if - D.
Đối tượng phải được tạo bằng lệnh
input
- A.
- Q 22.
Vòng lặp
for x in range(2, 9, 2)sẽ duyệt qua các giá trị nào?- A.
2, 4, 6, 8
- B.
2, 3, 4, 5, 6, 7, 8
- C.
0, 2, 4, 6, 8
- D.
2, 4, 6, 8, 9
- A.
- Q 23.
Các giá trị được tạo ra bởi
range(1, 6)là gì?- A.
1, 2, 3, 4, 5, 6
- B.
0, 1, 2, 3, 4, 5
- C.
2, 3, 4, 5
- D.
1, 2, 3, 4, 5
- A.
- Q 24.
Điều gì cần chú ý để một vòng lặp
whilekhông bị chạy vô hạn?- A.
Không dùng biến nào trong điều kiện
- B.
Luôn đặt điều kiện là
False - C.
Bảo đảm điều kiện có thể thay đổi theo hướng làm vòng lặp kết thúc
- D.
Không được phép dùng lệnh
breakbên trong vòng lặp
- A.
- Q 25.
Khi lệnh
breakđược thực thi, chương trình sẽ làm gì?- A.
Chỉ bỏ qua lần lặp hiện tại và tiếp tục lặp tiếp
- B.
Thoát khỏi vòng lặp đang chứa lệnh
break - C.
Xóa toàn bộ biến của vòng lặp
- D.
Chạy lại vòng lặp từ đầu
- A.
- Q 26.
Khi nào khối
elseđi kèm một vòng lặp trong Python được thực thi?- A.
Khi vòng lặp kết thúc mà không bị
breakthoát - B.
Khi vòng lặp bị
breakthoát ra - C.
Mỗi lần biến lặp thay đổi
- D.
Chỉ khi vòng lặp không có phần tử nào
- A.
- Q 27.
Với
s = 'Python', biểu thứcs[-1]trả về ký tự nào?- A.
P
- B.
y
- C.
Không có kết quả
- D.
n
- A.
- Q 28.
Với
s = '0123456789', biểu thứcs[2:8:2]tạo chuỗi con nào?- A.
234567
- B.
2468
- C.
013579
- D.
02468
- A.
- Q 29.
Điều gì sẽ xảy ra nếu thực hiện
s[1] = 'A'với một chuỗi đã tạo trong Python?- A.
Ký tự tại vị trí đó được thay thế
- B.
Một bản sao mới của chuỗi được tạo tự động
- C.
Chương trình báo lỗi vì không thể gán cho một phần tử của chuỗi
- D.
Chỉ số
-1được sử dụng thay thế
- A.
- Q 30.
Biểu thức nào trong các biểu thức sau trả về chuỗi
PYTHON?- A.
'Python'.upper() - B.
'Python'.lower() - C.
'Python'.isdigit() - D.
'Python'.index('P')
- A.
- Q 31.
Giá trị của biểu thức
'abc' * 2là gì?- A.
ab - B.
abcabcabc - C.
Không có giá trị vì không thể nhân hai chuỗi
- D.
abcabc
- A.
- Q 32.
Giá trị của biểu thức
'bc' in 'abcd'là gì?- A.
False
- B.
True
- C.
2
- D.
Không có giá trị
- A.
- Q 33.
Cho
ten = 'An'. Biểu thức f-stringf'Xin chao {ten}'tạo ra chuỗi nào?- A.
Xin chao {ten} - B.
Xin chao - C.
Xin chao An - D.
Xin chao None
- A.
- Q 34.
Đặc điểm nào mô tả đúng về danh sách trong Python?
- A.
Có thể chứa các phần tử thuộc nhiều kiểu dữ liệu khác nhau, kể cả một danh sách con
- B.
Chỉ có thể chứa số nguyên
- C.
Không thể thay đổi sau khi được tạo
- D.
Chỉ được dùng để lưu các cặp khóa và giá trị
- A.
- Q 35.
Lệnh
L.append(7)thực hiện điều gì?- A.
Chèn 7 vào đầu danh sách
- B.
Xóa phần tử cuối cùng
- C.
Tạo một danh sách mới chứa 7
- D.
Thêm 7 vào cuối danh sách
- A.
- Q 36.
Với
L = [10, 20, 30], sau lệnhL.insert(1, 15)danh sách có giá trị gì?- A.
[10, 20, 15, 30] - B.
[10, 15, 20, 30] - C.
[15, 10, 20, 30] - D.
[10, 20, 30, 15]
- A.
- Q 37.
Cho
L = [3, 5, 7]. Sau khi thực hiệnx = L.pop(1), giá trị củaxvàLlà gì?- A.
x = 3,L = [5, 7] - B.
x = 7,L = [3, 5] - C.
x = 5,L = [3, 7] - D.
x = 5,L = [3, 5, 7]
- A.
- Q 38.
Cho
L = [3, 1, 2]. Sau các lệnhL.sort()vàprint(L), kết quả là gì?- A.
[1, 2, 3] - B.
[3, 1, 2] - C.
[2, 1, 3] - D.
Chương trình báo lỗi vì
sortkhông thay đổi danh sách
- A.
- Q 39.
Cho
L = [1, 2],T = Lvà sau đóT.append(3). Giá trị củaLlúc này là gì?- A.
[1, 2] - B.
[3] - C.
Không xác định vì
Tphải là hằng số - D.
[1, 2, 3]
- A.
- Q 40.
Sau lệnh
a, *b = [1, 2, 3, 4], giá trị củaavàblà gì?- A.
a = 1,b = 2 - B.
a = 1,b = [2, 3, 4] - C.
a = [1],b = [2, 3, 4] - D.
a = 4,b = [1, 2, 3]
- A.
- Q 41.
Điều gì mô tả đúng về từ điển trong Python?
- A.
Mỗi phần tử luôn là một danh sách các giá trị
- B.
Các phần tử được sắp xếp theo thứ tự số
- C.
Mỗi khóa duy nhất được liên kết với một giá trị
- D.
Không thể thay đổi hoặc bổ sung giá trị sau khi tạo
- A.
- Q 42.
Cho
d = {'CAM': 100, 'BUOI': 200}. Sau lệnhd['CAM'] = 400, nội dung củadlà gì?- A.
{'CAM': 400, 'BUOI': 200} - B.
{'CAM': 100, 'BUOI': 200} - C.
{'CAM': 400, 'BUOI': 200, 'CAM': 100} - D.
{'BUOI': 200}
- A.
- Q 43.
Đặc điểm nào là đặc thù của tuple trong Python?
- A.
Các phần tử của nó luôn được sắp xếp tăng dần
- B.
Mỗi phần tử có thể xuất hiện nhiều lần
- C.
Có thể dùng làm khóa của từ điển nếu các phần tử của nó có thể băm
- D.
Có thứ tự và các phần tử không thể bị thay thế sau khi tạo
- A.
- Q 44.
Điều gì phân biệt tập hợp
setvới list trong Python?- A.
Set không thể chứa phần tử
- B.
Set không lưu các phần tử trùng lặp và không bảo đảm một thứ tự cụ thể
- C.
Set bắt buộc phải chứa các khóa và giá trị
- D.
Set luôn được sắp xếp theo thứ tự tăng
- A.
- Q 45.
Cho
A = {1, 2, 3}vàB = {3, 4, 5}. Kết quả củaA & Blà gì?- A.
{3} - B.
{1, 2, 3, 4, 5} - C.
{1, 2, 4, 5} - D.
{4, 5}
- A.
- Q 46.
Hàm
tinh_dien_tichdo người dùng tự định nghĩa khác hàm dựng sẵnlennhư thế nào?- A.
Cả hai đều phải được viết bằng từ khóa
def - B.
Hàm tự định nghĩa không thể nhận tham số
- C.
Hàm tự định nghĩa được người dùng viết bằng
def, còn hàm dựng sẵn do Python cung cấp - D.
Hàm dựng sẵn phải được nhập từ một module bên ngoài
- A.
- Q 47.
Khi lệnh
returnđược thực thi trong một hàm, điều gì xảy ra?- A.
Hàm tiếp tục chạy các lệnh còn lại
- B.
Hàm trả về một giá trị và kết thúc
- C.
Chương trình bỏ qua tất cả hàm còn lại
- D.
Biến cục bộ của hàm đều được xóa khỏi bộ nhớ
- A.
- Q 48.
Biểu thức list comprehension
[x * x for x in range(5)]tạo ra danh sách nào?- A.
[1, 4, 9, 16, 25] - B.
[0, 1, 2, 3, 4] - C.
[0, 2, 4, 6, 8] - D.
[0, 1, 4, 9, 16]
- A.
- Q 49.
Với
L = [[1, 2], [3, 4]], biểu thứcL[1][0]có giá trị là gì?- A.
3
- B.
1
- C.
2
- D.
4
- A.
- Q 50.
Với
L = [[1, 2], [3, 4]], biểu thức[x for row in L for x in row]tạo ra kết quả nào?- A.
[[1, 2], [3, 4]] - B.
[1, 2, 3] - C.
[1, 2, 3, 4] - D.
[1, 4]
- A.
Answers and explanations are in mode.