Tắt QC

Trắc nghiệm ôn tập Tin học khoa học máy tính 11 cánh diều cuối học kì 2( Đề số 2)

Bài trắc nghiệm có đáp án. Câu hỏi và bài tập trắc nghiệm Tin học khoa học máy tính 11 cuối học kì 2 sách cánh diều. Học sinh luyện tập bằng cách chọn đáp án của mình trong từng câu hỏi. Dưới cùng của bài trắc nghiệm, có phần xem kết quả để biết bài làm của mình. Kéo xuống dưới để bắt đầu.

Câu 1: Hãy chọn phát biểu Đúng:

  •    A. Với mỗi bài toán cụ thể, phải lựa chọn ngôn ngữ lập trình phù hợp rồi mới xây dựng thuật toán giải bài toán đó
  •    B. Máy tính có hiểu được chương trình viết bằng ngôn ngữ tự nhiên
  •    C. Cần phải xác định bài toán trước khi giải bài toán trên máy tính
  •    D. Các bước giải bài toán trên máy tính là: Mô tả thuật toán → Xác định bài toán → Viết chương trình

Câu 2: Khai báo cung cấp những thông tin gì?

  •    A. Tên biến mảng, kiểu dữ liệu, kích thước
  •    B. Kích thước
  •    C. Tên biến mảng
  •    D. Kiểu dữ liệu

Câu 3: Làm thế nào để trích xuất một phần của mảng hai chiều, chẳng hạn từ hàng 2 đến hàng 4 và từ cột 1 đến cột 3?

  •  A. array.extract(2:4, 1:3)
  •  B. array.slice(1:3, 2:4)
  •  C. array[2:5, 1:4]
  •  D. array.subarray(2:4, 1:3)

Câu 4: Để mở tệp bai1.doc để đọc dữ liệu bằng văn bản tiếng Việt Unicode thông dụng hiện nay ta dùng lệnh:

  •    A. f = ("bai1.doc", "r",encoding="utf-8")
  •    B. f = open("bai1.doc", "w",encoding="utf-8")
  •    C. f = open("bai1.doc", "r",encoding="utf-8")
  •    D. f = read("bai1.doc", "r",encoding="utf-8")

Câu 5: Cho câu lệnh sau: s = f1.readline().strip()

Khẳng định nào sau đây là đúng khi nói về câu lệnh trên:

  •    A. Đọc một dòng từ tệp vào biến xâu s, cắt bỏ các dấu cách thừa.
  •    B. Cắt bỏ các dấu cách thừa của xâu s.
  •    C. Đọc một dòng từ tệp vào biến xâu s, không cắt bỏ các dấu cách thừa.
  •    D. Đọc toàn bộ từ tệp vào biến xâu s, cắt bỏ các dấu cách thừa.

Câu 6: Em sẽ thiết kế chương trình theo các bước nào sau đây:

B1. Thiết kế chung

B2. Thiết kế công việc nhập dữ liệu

B3. Thiết kế công việc xử lý dữ liệu

B4. Thiết lập báo cáo, đưa ra dữ liệu

  •  A. B1, B3, B4
  •  B. B1, B2, B3, B4
  •  C. B1, B2. B3
  •  D. B1, B2

Câu 7: Phát biểu nào dưới đây về kiểu mảng một chiều là phù hợp?

  •    A. Là một tập hợp các số nguyên
  •    B. Mảng không thể chứa kí tự
  •    C. Là một dãy hữu hạn các phần tử cùng kiểu
  •    D. Độ dài tối đa của mảng là 255

Câu 8: Làm thế nào để khai báo một mảng trong Python?

  •  A. arr(1, 2, 3)
  •  B. list = (1, 2, 3)
  •  C. array(1, 2, 3)
  •  D. array = [1, 2, 3]

Câu 9: Thuật toán sắp xếp chọn sẽ so sánh các phần tử ở vị trí nào?

  •    A. So sánh phần tử ở vị trí được xét với các phần tử phía sau.
  •    B. So sánh phần tử ở vị trí được xét với các phần tử phía trước.
  •    C. So sánh phần tử ở vị trí được xét với các phần tử đầu tiên.
  •    D. So sánh phần tử ở vị trí được xét với các phần tử liền kề.

Câu 10: Bàn về các loại ngôn ngữ lập trình có các ý kiến sau đây.  Theo bạn ý kiến nào xác đáng nhất.

  •    A. Sử dụng ngôn ngữ bậc cao là tốt nhất vì thời gian phát triển phần mềm nhanh và ít bị
  •    B. Sử dụng hợp ngữ tốt hơn cả vì hợp ngữ cho phép can thiệp ở mức thấp như ngôn ngữ máy, mặc dù lập trình có khó hơn ngôn ngữ bậc cao nhưng dễ hơn nhiều so với ngôn ngữ máy
  •    C. Sử dụng ngôn ngữ máy tốt hơn vì ta có thể can thiệp tốt nhất đến từng bước xử lý sơ cấp trong máy. Vì thế hiệu quả của phần mềm là cao nhât
  •    D. Tùy từng trường hợp. Nói chung nên dùng ngôn ngữ bậc cao phù hợp với lĩnh vực ứng dụng vì hiệu suất phát triển phần mềm là cao nhất. Chỗ nào cần tối ưu mã chương trình thì mới dùng hợp ngữ. Nói chung không cần sử dụng ngôn ngữ máy vì hợp ngữ hầu như đã thể hiện chính ngôn ngữ máy

Câu 11: Cho khai báo mảng sau:

A = list(“3456789”)

Để in giá trị phần tử thứ 2 của mảng một chiều A ra màn hình ta viết:

  •  A. print(A[2]).
  •  B. print(A[3]).
  •  C. print(A[0]).
  •  D. print(A[1]).

Câu 12: Khẳng định nào sau đây là sai?

  •    A. Có hai chương trình dịch là biên dịch và thông dịch.
  •    B. Không cần viết chương trình ta vẫn có thể giải một toán trên máy tính.
  •    C. Quá trình giải toán bằng lập trình trên máy tính có 4 bước.
  •    D. Chương trình viết bằng ngôn ngữ lập trình bậc cao sẽ được dịch sang ngôn ngữ máy để thực hiện.

Câu 13: Trong mảng hai chiều, làm thế nào để sắp xếp các hàng theo giá trị của cột 2?

  •  A. array.sort_by_column(2)
  •  B. array.sort(2)
  •  C. array.sort_rows(2)
  •  D. array.sort_by_column(1)

Câu 14: Bước tìm thuật toán của bài toán và cách tổ chức dữ liệu là:

  •    A. Tìm thuật toán dựa trên bước xác định bài toán, dựa trên mối quan hệ giữa các đại lượng đã cho với những giá trị cần tìm, đồng thời xác định cách tổ chức dữ liệu có thể sử dụng tương ứng với thuật toán đó.
  •    B. Lựa chọn cách tổ chức dữ liệu và sử dụng ngôn ngữ lập trình để diễn đạt đúng thuật toán.
  •    C. Dùng các bộ dữ liệu khác nhau để kiểm thử và hiệu chỉnh chương trình.
  •    D. Xác định những giá trị đã cho và mối quan hệ giữa chúng.

Câu 15: Cho xâu s1=’abc’, xâu s2=’abc’. Khẳng định nào sau đây là đúng:

  •  A. Xâu s2 nhỏ hơn xâu s1.
  •  B. Xâu s2 lớn hơn hoặc bằng xâu s1.
  •  C. Xâu s2 lớn hơn xâu s1.
  •  D. Xâu s1 bằng xâu s2.

Câu 16: Để tạo xâu in thường từ toàn bộ xâu hiện tại ta dùng hàm:

  •  A. str()
  •  B. upper()
  •  C. len()
  •  D. lower()

Câu 17: Thuật toán sắp xếp nổi bọt sắp xếp danh sách bằng cách hoán đổi các phần tử liền kề bao nhiêu lần?

  •  A. Hai lần.
  •  B. Một lần.
  •  C. Nhiều lần.
  •  D. Mười lần.

Câu 18: Bước kiểm thử, chạy và hiệu chỉnh chương trình là:

  •    A. Tìm thuật toán dựa trên bước xác định bài toán, dựa trên mối quan hệ giữa các đại lượng đã cho với những giá trị cần tìm, đồng thời xác định cách tổ chức dữ liệu có thể sử dụng tương ứng với thuật toán đó.
  •    B. Dùng các bộ dữ liệu khác nhau để kiểm thử và hiệu chỉnh chương trình.
  •    C. Lựa chọn cách tổ chức dữ liệu và sử dụng ngôn ngữ lập trình để diễn đạt đúng thuật toán.
  •    D. Xác định những giá trị đã cho và mối quan hệ giữa chúng.

Câu 19: Phát biểu nào dưới đây về chỉ số của mảng là phù hợp nhất?

  •    A. Dùng trong vòng lặp với mảng
  •    B. Dùng để quản lý kích thước của mảng
  •    C. Dùng trong vòng lặp với mảng để quản lý kích thước của mảng
  •    D. Dùng để truy cập đến một phần tử bất kỳ trong mảng

Câu 20: Thuật toán sắp xếp nổi bọt thực hiện sắp xếp dãy số không giảm bằng cách nào dưới đây?

  •    A. Di chuyển số nhỏ nhất về cuối danh sách.
  •    B. Cả ba đáp án trên đều sai.
  •    C. Di chuyển số lớn nhất về đầu danh sách.
  •    D. Đổi chỗ 2 số liền kề nhau nếu chúng đứng sai thứ tự cho đến khi dãy số được sắp xếp.

Câu 21: Cho dãy số: 15, 1, 31, 9, 78, 42. Nếu sử dụng thuật toán sắp xếp nổi bọt để sắp xếp dãy trên tăng dần thì sau bao nhiêu lượt đổi chỗ thì thuật toán kết thúc?

  •  A. 5
  •  B. 4
  •  C. 3
  •  D. 2

Câu 22: Hãy chọn phát biểu Sai?

  •    A. Đối với mỗi bài toán cụ thể chúng ta chỉ có 1 thuật toán duy nhất để giải bài toán đó trên máy tính
  •    B. Xác định bài toán là xác định rõ các điều kiện cho trước và kết quả cần thu được
  •    C. Việc thực hiện cả 3 bước khi giải bài toán trên máy tính là cần thiết, nhất là đối với bài toán phức tạp
  •    D. Dãy hữu hạn các thao tác cần thực hiện để giải một bài toán được gọi là thuật toán

Câu 23: Sau vòng lặp thứ nhất của thuật toán sắp xếp chọn, phương án nào đúng?

  •    A. Phần tử có giá trị lớn nhất trong dãy được tìm thấy và đổi chỗ cho phần tử đứng đầu dãy.
  •    B. Phần tử có giá trị nhỏ nhất sẽ đổi vị trí cho phần tử cuối dãy.
  •    C. Các phần tử liền kề được hoán đổi.
  •    D. Phần tử có giá trị nhỏ nhất trong dãy được tìm thấy và đổi chỗ cho phần tử đứng đầu dãy.

Câu 24: Hàm min() và max() được sử dụng để làm gì trong mảng?

  •    A. Tìm tổng của các phần tử trong mảng
  •    B. Tìm giá trị nhỏ nhất và lớn nhất của mảng
  •    C. Đảo ngược mảng
  •    D. Tìm giá trị trung bình của mảng

Câu 25: Làm thế nào để kết hợp hai mảng trong Python?

  •  A. array + array2
  •  B. array.merge(array2)
  •  C. array.concat(array2)
  •  D. array.combine(array2)

Câu 26: Định nghĩa sau là của thuật toán sắp xếp nào?

“Thuật toán thực hiện lặp đi lặp lại việc đổi chỗ 2 số liền kề trong một dãy số nếu chúng đứng sai thứ tự cho đến khi dãy số được sắp xếp”.

  •  A. Sắp xếp chèn.
  •  B. Sắp xếp nhanh.
  •  C. Sắp xếp nổi bọt.
  •  D. Sắp xếp chọn.

Câu 27: Mảng đa chiều là gì trong Python?

  •    A. Một mảng có thể chứa nhiều mảng con
  •    B. Một mảng với số chiều tùy ý
  •    C. Một mảng với độ dài không cố định
  •    D. Một mảng có thể chứa nhiều kiểu dữ liệu khác nhau

Câu 28: Chọn phương án tốt nhất trong định nghĩa về hợp ngữ (assembly). Hợp ngữ  là loại ngôn ngữ

  •    A. Máy tính có thể thực hiện được trực tiếp không cần dịch
  •    B. Là ngôn ngữ lập trình mà các lệnh không viết trực tiếp bằng mã nhị phân
  •    C. Là loại ngôn ngữ không viết bằng mã nhị phân được thiết kế cho một số loại máy có thể chạy trực tiếp dưới dạng chữ
  •    D. Là ngôn ngữ có các lệnh được viết trong mã chữ nhưng về cơ bản mỗi lệnh tương đương với một một lệnh máy. Để chạy được cần dịch ra ngôn ngữ máy

Câu 29: Em hãy chọn các câu đúng?

  •    A. Thuật toán có đầu vào là kết quả nhận được sau khi thực hiện các bước của thuật toán.
  •    B. Thuật toán có đầu vào là các dữ liệu đầu ra
  •    C. Thuật toán có đầu ra là kết quả nhận được sau khi thực hiện các bước của thuật toán.
  •    D. Thuật toán có đầu ra là các dữ liệu ban đầu.

Câu 30: Công đoạn “lập trình” là:

  •    A. Thực hiện các bước thử nghiệm sản phẩm xem có khiếm khuyết gì không để khắc phục kịp thời trước khi phần mềm đến tay người sử dụng.
  •    B. Chuyển những mô tả ở bản thiết kế thành các lệnh thực hiện được trên máy tính để máy tính “hiểu” và “thực hiện” đúng theo thiết kế.
  •    C. Chuyển các yêu cầu về phần mềm thành bản thiết kế phần mềm.
  •    D. Phân tích nhu cầu của cộng đồng cần phục vụ, xác định vai trò của phần mềm, xác định thông tin đầu vào, đầu ra của hệ thống phần mềm cần xây dựng.

Câu 31: Có bao nhiêu chế độ dịch chương trình viết trên ngôn ngữ lập trình bậc cao sang ngôn ngữ máy:

  •  A. 2
  •  B. 3
  •  C. 1
  •  D. 4

Câu 32: Làm thế nào để tính tổng của các phần tử trong mảng?

  •  A. array.total()
  •  B. total(array)
  •  C. sum(array)
  •  D. array.sum()

Câu 33: Để đóng biến tệp f khi kết thúc làm việc ta dùng lệnh:

  •  A. f.close()
  •  B. close()
  •  C. close(f)
  •  D. f=close()

Câu 34: Trong các câu sau đây, những câu nào nào SAI

1) Không nhất thiết chỉ có nghề thiết kế và lập trình mới đòi hỏi người làm nghề phải có tính kiên trì, đam mê.

2) Muốn làm nghề thiết kế và lập trình nhất thiết phải thành thạo tiếng Anh.

3) Công nghệ số có tốc độ phát triển rất nhanh nên đòi hỏi người thiết kế và lập trình phải có khả năng tự học, sáng tạo.

4) Tất cả các cơ sở đào tạo trong lĩnh vực công nghệ thông tin của Việt Nam đều rất lạc hậu so với các nước trong khu vực và trên thế giới.

  •  A. 1, 4
  •  B. 1, 2, 4
  •  C. 2, 3
  •  D. 2, 4

Câu 35: Công đoạn thiết kế phần mềm là:

  •    A. Thực hiện các bước thử nghiệm sản phẩm xem có khiếm khuyết gì không để khắc phục kịp thời trước khi phần mềm đến tay người sử dụng.
  •    B. Chuyển những mô tả ở bản thiết kế thành các lệnh thực hiện được trên máy tính để máy tính “hiểu” và “thực hiện” đúng theo thiết kế.
  •    C. Phân tích nhu cầu của cộng đồng cần phục vụ, xác định vai trò của phần mềm, xác định thông tin đầu vào, đầu ra của hệ thống phần mềm cần xây dựng.
  •    D. Chuyển các yêu cầu về phần mềm thành bản thiết kế phần mềm.

Câu 36: Chỉ ra phương án sai:

Ý nghĩa của việc chi bài toán thành bài toán nhỏ hơn là:

  •    A. Giúp công việc đơn giản hơn.
  •    B. Làm cho công việc trở nên phức tạp hơn.
  •    C. Giúp công việc dễ giải quyết hơn.
  •    D. Giúp bài toán trở nên dễ hiểu hơn.

Câu 37: Chọn phương án tốt nhất trong định nghĩa về hợp ngữ (assembly). Hợp ngữ  là loại ngôn ngữ

  •    A. Là loại ngôn ngữ không viết bằng mã nhị phân được thiết kế cho một số loại máy có thể chạy trực tiếp dưới dạng chữ
  •    B. Máy tính có thể thực hiện được trực tiếp không cần dịch
  •    C. Là ngôn ngữ có các lệnh được viết trong mã chữ nhưng về cơ bản mỗi lệnh tương đương với một một lệnh máy. Để chạy được cần dịch ra ngôn ngữ máy
  •    D. Là ngôn ngữ lập trình mà các lệnh không viết trực tiếp bằng mã nhị phân

Câu 38: Làm thế nào để sao chép một mảng trong Python?

  •  A. array.replicate()
  •  B. array.duplicate()
  •  C. array.copy()
  •  D. array.clone()

Câu 39: Đối tượng dưới đây thuộc kiểu dữ liệu nào?

  • A = [1, 2, ‘3’]
  •  A. list.
  •  B. string.
  •  C. int.
  •  D. float.

Câu 40: Hàm index() được sử dụng để làm gì trong mảng?

  •    A. Thay đổi chỉ mục của một phần tử
  •    B. Tìm số lần xuất hiện của một phần tử
  •    C. Tìm giá trị của một phần tử cụ thể
  •    D. Tìm chỉ mục của một phần tử cụ thể

Xem đáp án

Nội dung quan tâm khác

Bình luận

Giải bài tập những môn khác