wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Câu hỏi về lập trình

Total questions: 59

Worksheet time: 30mins

Name
Class
Date
1.

Mục tiêu chính của quá trình lập trình là gì?

a)

Tạo ra một giao diện người dùng đẹp mắt

b)

Chuyển đổi bản thiết kế chi tiết thành mã máy có thể thực thi

c)

Xây dựng cơ sở dữ liệu hiệu quả

d)

Kiểm thử và sửa lỗi chương trình

2.

Lập trình logic là gì?

a)

Là kiểu lập trình tập trung vào việc mô tả các vấn đề dưới dạng các mệnh đề. logic

b)

Là kiểu lập trình tập trung vào việc thực hiện các phép tính trên các hàm.

c)

Là kiểu lập trình tập trung vào việc tương tác với cơ sở dữ liệu.

d)

Là kiểu lập trình kết hợp cả lập trình hướng đối tượng và lập trình thủ tục.

3.

Lập trình cơ sở dữ liệu thường được sử dụng để làm gì?

a)

Tạo các ứng dụng đồ họa

b)

Phát triển các trò chơi điện tử

c)

Quản lý và truy xuất dữ liệu

d)

Tạo các mạng thần kinh nhân tạo

4.

Ngôn ngữ lập trình nào sau đây thường được sử dụng cho lập trình logic?

a)

Python

b)

Java

c)

Prolog

d)

C++

5.

Sự khác biệt cơ bản giữa lập trình thủ tục và lập trình hướng đối tượng là gì?

a)

Lập trình thủ tục tập trung vào dữ liệu, còn lập trình hướng đối tượng tập trung vào hành động.

b)

Lập trình thủ tục tập trung vào hành động, còn lập trình hướng đối tượng tượng tập trung vào đối tượng

c)

Cả hai đều tập trung vào dữ liệu.

d)

Cả hai đều tập trung vào hành động.

6.

Sự khác biệt cơ bản giữa lập trình logic và lập trình hướng đối tượng là gì?

a)

(A). Lập trình logic tập trung vào các quy tắc và sự thật, trong khi lập trình hướng đối tượng tập trung vào các đối tượng và hành động của chúng.

b)

(B). Lập trình logic chỉ sử dụng ngôn ngữ tự nhiên, còn lập trình hướng đối tượng sử dụng các ngôn ngữ lập trình đặc biệt.

c)

(C). Lập trình lo

7.

Tại sao lập trình logic lại phù hợp để giải quyết các bài toán về trí tuệ nhân tạo?

a)

Vì nó cho phép biểu diễn kiến thức một cách trực quan.

b)

Vì nó có khả năng suy luận và đưa ra quyết định.

c)

Vì nó dễ dàng tích hợp với các hệ thống chuyên gia.

d)

Cả (A), (B), (C) đều đúng

8.

Ưu điểm lớn nhất của việc sử dụng phương pháp Lập trình hướng đối tượng là gì?

a)

Tăng tốc độ thực thi chương trình.

b)

Giảm dung lượng bộ nhớ sử dụng.

c)

Tăng tính dễ hiểu, bảo trì và mở rộng của phần mềm.

d)

Giảm chi phí phát triển phần mềm.

9.

Đặc điểm nổi bật nhất của lập trình logic là gì?

a)

Tập trung vào các cấu trúc dữ liệu.

b)

Dựa trên các mệnh đề logic và quy tắc suy luận.

c)

Sử dụng nhiều vòng lặp và điều kiện.

d)

Hướng đến việc mô hình hóa các đối tượng thực tế.

10.

Sự khác biệt cơ bản giữa lập trình logic và lập trình hướng đối tượng là gì?

a)

Lập trình logic tập trung vào các hành động, còn lập trình hướng đối tượng tập trung vào các đối tượng.

b)

Lập trình logic dựa trên các mệnh đề logic, còn lập trình hướng đối tượng dựa trên các lớp và đối tượng.

c)

Lập trình logic thường được sử dụng trong các hệ thống nhúng, còn lập trình hướng đối tượng thường được sử dụng trong phát triển ứng dụng.

d)

Lập trình logic không hỗ trợ tính đa hình, còn lập trình hướng đối tượng thì có.

11.

Đặc điểm nổi bật nhất của lập trình functional là gì?

a)

Tập trung vào trạng thái của các đối tượng.

b)

Sử dụng nhiều vòng lặp.

c)

Tính bất biến của dữ liệu.

d)

Tính kế thừa giữa các lớp.

12.

Sự khác biệt cơ bản giữa lập trình functional và lập trình hướng đối tượng là gì?

a)

Lập trình functional tập trung vào các đối tượng, còn lập trình hướng đối tượng tập trung vào các hàm.

b)

Lập trình functional không cho phép thay đổi trạng thái của đối tượng, còn lập trình hướng đối tượng cho phép.

c)

Lập trình functional sử dụng nhiều vòng lặp hơn, còn lập trình hướng đối tượng sử dụng nhiều hàm đệ quy hơn.

d)

Lập trình functional chỉ sử dụng một loại cấu trúc dữ liệu, còn lập trình hướng đối tượng sử dụng nhiều loại cấu trúc dữ liệu khác nhau.

13.

Tại sao các nguyên tắc lập trình lại quan trọng?

a)

Để làm cho mã trở nên đẹp hơn.

b)

Để chứng tỏ khả năng của lập trình viên.

c)

Để tạo ra các chương trình chạy nhanh hơn.

d)

Để tạo ra các chương trình dễ đọc, dễ bảo trì, dễ mở rộng và ít lỗi hơn.

14.

Git là gì?

a)

Một hệ điều hành.

b)

Một ngôn ngữ lập trình.

c)

Một hệ thống quản lý phiên bản phân tán, cho phép theo dõi lịch sử thay đổi của code, tạo các nhánh, hợp nhất mã và làm việc nhóm hiệu quả.

d)

Một công cụ soạn thảo văn bản.

15.

GitHub là gì?

a)

Một nền tảng chia sẻ ảnh.

b)

Một công cụ quản lý dự án.

c)

Một nền tảng lưu trữ mã nguồn và cộng tác phát triển phần mềm.

d)

Một mạng xã hội dành cho lập trình viên.

16.

Mối quan hệ giữa Git và GitHub là:

a)

GitHub là một phần mở rộng của Git.

b)

Git là một phần mở rộng của GitHub.

c)

GitHub sử dụng Git làm nền tảng để quản lý các kho lưu trữ.

d)

Không có mối quan hệ nào giữa Git và GitHub.

17.

Có thể sử dụng Git với các nền tảng khác ngoài GitHub không?

a)

Có, có nhiều nền tảng khác như Bitbucket, GitLab cũng sử dụng Git làm nền tảng.

b)

Không, chỉ có GitHub mới hỗ trợ Git.

c)

Chỉ có thể sử dụng Git với các dự án mã nguồn mở.

d)

Chỉ có thể sử dụng Git với các dự án thương mại.

18.

Khi nào nên sử dụng lập trình hướng đối tượng?

a)

Khi cần mô hình hóa các vấn đề phức tạp.

b)

Khi cần xây dựng các hệ thống lớn.

c)

Khi cần tái sử dụng mã.

d)

Tất cả các đáp án (A), (B), (C) đều đúng

19.

Yếu tố quan trọng nhất khi chọn ngôn ngữ lập trình là gì?

a)

Độ phổ biến của ngôn ngữ.

b)

Mức độ dễ học của ngôn ngữ.

c)

Tính phù hợp của ngôn ngữ với yêu cầu của dự án.

d)

Mức lương của lập trình viên sử dụng ngôn ngữ đó.

20.

Nếu một dự án yêu cầu tích hợp với nhiều hệ thống khác nhau, yếu tố nào cần đặc biệt quan tâm:

a)

Hiệu năng của ngôn ngữ.

b)

Khả năng tương thích và số lượng thư viện hỗ trợ.

c)

Độ dễ học của ngôn ngữ.

d)

Cộng đồng người dùng.

21.

Khi lựa chọn ngôn ngữ lập trình cho một dự án lớn, phức tạp, yếu tố nào sau đây cần được ưu tiên:

a)

Khả năng mở rộng, bảo trì và khả năng làm việc nhóm.

b)

Độ dễ học của ngôn ngữ.

c)

Hiệu năng tuyệt đối.

d)

Chi phí phát triển ban đầu.

22.

Bạn đang làm việc trên một dự án cá nhân và muốn chia sẻ mã nguồn lên một nền tảng mở để cộng đồng có thể đóng góp. Nền tảng nào sau đây phù hợp nhất:

a)

Bitbucket

b)

GitHub

c)

GitLab

d)

SVN

23.

Khi cài đặt một ứng dụng web, bạn nên sử dụng phương pháp nào để đảm bảo tính nhất quán của cấu hình trên các máy chủ:

a)

Cài đặt thủ công từng máy chủ.

b)

Sử dụng các công cụ quản lý cấu hình như Ansible hoặc Puppet.

c)

Tạo một script cài đặt và chạy trên tất cả các máy chủ.

d)

Sử dụng một công cụ quản lý cấu hình và kết hợp với một script cài đặt.

24.

Sau khi cài đặt phần mềm quản lý kho hàng, bạn cần thực hiện bước nào sau đây để đảm bảo dữ liệu được bảo mật:

a)

Cài đặt tường lửa.

b)

Đặt mật khẩu mạnh cho người dùng.

c)

Sao lưu dữ liệu thường xuyên.

d)

Tất cả các lựa chọn trên.

25.

Trong trường hợp nào sau đây, lập trình khai báo sẽ thích hợp hơn lập trình mệnh lệnh?

a)

Khi cần viết một thuật toán sắp xếp phức tạp.

b)

Khi cần kiểm soát từng bước thực hiện của chương trình.

c)

Khi muốn mô tả kết quả mong muốn mà không cần quan tâm đến quá trình thực hiện.

d)

Khi cần tối ưu hóa hiệu suất của chương trình đến từng câu lệnh.

26.

Lợi ích lớn nhất của lập trình khai báo so với lập trình mệnh lệnh là gì?

a)

Hiệu suất cao hơn.

b)

Dễ học hơn.

c)

Mã code dễ đọc, dễ bảo trì và ít lỗi hơn.

d)

Phù hợp với mọi loại bài toán.

27.

Trong một ứng dụng quản lý thư viện, muốn tìm tất cả các sách có từ khóa "lập trình". Bạn sẽ sử dụng phương pháp nào hiệu quả hơn?

a)

Viết một vòng lặp để duyệt qua từng cuốn sách và kiểm tra tiêu đề.

b)

Sử dụng một câu lệnh tìm kiếm trong cơ sở dữ liệu (ví dụ: SQL).

c)

Tạo một hàm đệ quy để tìm kiếm.

d)

Không có cách nào hiệu quả hơn.

28.

Khi nào nên kết hợp cả lập trình mệnh lệnh và lập trình khai báo trong cùng một dự án?

a)

Khi một số phần của ứng dụng yêu cầu kiểm soát chặt chẽ từng bước thực hiện, trong khi các phần khác cần mô tả kết quả một cách ngắn gọn.

b)

Khi bạn chỉ quen với một trong hai phương pháp.

c)

Khi hiệu suất là yếu tố quan trọng nhất.

d)

Khi dự án quá phức tạp.

29.

Khi nào nên sử dụng lập trình logic?

a)

Khi giải quyết các bài toán tìm kiếm và chứng minh.

b)

Khi xây dựng các ứng dụng đồ họa.

c)

Khi xử lý các dữ liệu số lớn.

d)

Khi cần hiệu năng cao.

30.

Thứ tự các mức trong kiểm thử phần mềm là?

a)

Kiểm thử tích hợp, kiểm thử hệ thống, kiểm thử chấp nhận, kiểm thử đơn vị

b)

Kiểm thử đơn vị, kiểm thử tích hợp, kiểm thử hệ thống, kiểm thử chấp nhận

c)

Kiểm thử đơn vị, kiểm thử tích hợp, kiểm thử chập nhận, kiểm thử hệ thống

d)

Kiểm thử hệ thống, kiểm thử chấp nhận, kiểm thử đơn vị, kiểm thử tích hợp

31.

Phân chia lớp tương đương là một kỹ thuật được sử dụng trong

a)

Kiểm thử hộp trắng

b)

Kiểm thử hộp đen

c)

Kiểm tử chấp nhận

d)

Kiểm thử hệ thống

32.

Câu 3: Kiểm thử là gì?

a)

Là tiến trình vận hành hệ thống hoặc thành phần hệ thống dưới những điều kiện xác định, quan sát hoặc ghi nhận kết quả và đưa ra đánh giá về hệ thống hoặc thành phần đó.

b)

Là tiến trình xây dựng các bộ dữ liệu thử

c)

Là tiến trình định vị lỗi trong chương trình và tiến hành sửa lỗi

d)

Là tiến trình kiểm tra sự vận hành của hệ thống phần mềm

33.

Câu 4: Một ca kiểm thử (Test case) gồm những gì?

a)

Tập dữ liệu kiểm thử, điều kiện thực thi, kết quả mong đợi

b)

Tập dữ liệu kiểm thử, các bước thực hiện khi kiểm thử

c)

Tập dữ liệu kiểm thử, các đánh giá kết quả kiểm thử

d)

Tập dữ liệu kiểm thử

34.

Câu 5: Kiểm thử chấp nhận (acceptance testing) thường được thực hiện bởi ai?

a)

Nhà phát triển phần mềm.

b)

Người dùng cuối hoặc khách hàng.

c)

Kiểm thử viên.

d)

Quản lý dự án.

35.

Câu 6: Kiểm thử phần mềm nên được bắt đầu từ giai đoạn nào sau đây?

a)

Phân tích và quản lý yêu cầu

b)

Thiết kế hệ thống

c)

Lập trình

d)

Bảo trì

36.

Câu 7: Phương pháp kiểm thử nào mà dữ liệu kiểm thử được xác định từ đặc tả yêu cầu?

a)

Kiểm thử hộp đen

b)

Kiểm thử hộp trắng

c)

Cả kiểm thử hộp đen và hộp trắng

d)

Kiểm thử hộp xám

37.

Câu 8: Kiểm thử hộp trắng còn được gọi là gì?

a)

Kiểm thử cấu trúc

b)

Kiểm thử hệ thống

c)

Kiểm thử chấp thuận

d)

Kiểm thử hiệu năng

38.

Câu 9: Phân tích giá trị biên nhằm?

a)

Mở rộng giá trị biên để xác định dữ liệu thử

b)

Thu hẹp giá trị biên đề hạn chế dữ liệu thử

c)

Kiểm tra phần mềm trên các giá trị biên để phát hiện lỗi

d)

Xem xét trên những miền độc lập để hình thành tập dữ liệu thử

39.

Câu 10: Kiểm thử hộp trắng không phát hiện được lỗi gì?

a)

Sai kiểu dữ liệu

b)

Sai thuật toán

c)

Lặp vô hạn

d)

Thiếu chức năng

40.

Câu 11: Kiểm thử động (dynamic testing) gồm những kỹ thuật kiểm thử gì?

a)

Kiểm thử hộp đen (black - box testing) và thanh tra mã nguồn

b)

Là kiểm thử hộp trắng (white box testing) và kiểm thử tĩnh

c)

Gồm kỹ thuật kiểm thử hộp đen và hộp trắng

d)

Là kỹ thuật kiểm thử cho các chức năng ứng với các yêu cầu thường biến đổi

41.

Câu 12: Kiểm thử hộp đen nhằm mục đích gì?

a)

Kiểm thử chức năng, cả hệ thống có thể xem như một chức năng

b)

Kiểm thử cấu trúc bên trong của hệ thống

c)

Kiểm thử toàn bộ hệ thống và cấu trúc bên trong của hệ thống

d)

Kiểm tra tính đúng đắn của từng đơn vị nhỏ nhất của phần mềm..

42.

Câu 13: Kiểm thử tích hợp nhằm mục đích gì?

a)

Kiểm thử trên các thành phần cấu tạo lên hệ thống cần xây dựng

b)

Xác định xem phần mềm đã được xây dựng theo đúng đặc tả chỉ ra hay chưa

c)

Xác định xem phần mềm đã vận hành như mong đợi

d)

Kiểm thử sự ghép nối, sự trao đổi dữ liệu giữa các thành phần/đơn vị phần mềm

43.

Câu 14: Loại lỗi nào sau đây thường được phát hiện bằng kiểm thử hộp đen?

a)

Lỗi cú pháp trong mã nguồn.

b)

Lỗi trong thuật toán.

c)

Lỗi trong giao diện người dùng.

d)

Lỗi vi phạm các quy tắc lập trình.

44.

Câu 15: Kỹ thuật thiết kế test case nào sau đây thường được sử dụng trong kiểm thử hộp đen?

a)

Phân tích giá trị biên.

b)

Kiểm tra đường đi.

c)

Kiểm tra điều kiện.

d)

Kiểm tra vòng lặp.

45.

e nào sau đây thường được sử dụng trong kiểm thử hộp đen?

a)

Phân tích giá trị biên.

b)

Kiểm tra đường đi.

c)

Kiểm tra điều kiện.

d)

Kiểm tra vòng lặp.

46.

Kỹ thuật nào sau đây thường được sử dụng trong kiểm thử hộp trắng?

a)

Kiểm thử phân vùng tương đương

b)

Kiểm thử giá trị biên

c)

Kiểm thử dựa trên đồ thị luồng điều khiển

d)

Kiểm thử sử dụng trường hợp sử dụng

47.

Kiểm thử hộp trắng thường được thực hiện bởi ai?

a)

Người dùng cuối

b)

Nhà quản lý dự án

c)

Nhà phát triển phần mềm

d)

Người kiểm thử độc lập

48.

Mục tiêu chính của kiểm thử đơn vị (unit testing) là gì?

a)

Kiểm tra sự tương tác giữa các module khác nhau.

b)

Đảm bảo phần mềm đáp ứng các yêu cầu của người dùng cuối.

c)

Kiểm tra tính đúng đắn của từng đơn vị nhỏ nhất của phần mềm.

d)

Kiểm tra hiệu suất của toàn bộ hệ thống.

49.

Kiểm thử tích hợp (integration testing) nhằm mục đích kiểm tra gì?

a)

Sự tương tác giữa các module khác nhau trong hệ thống.

b)

Tính đúng đắn của từng đơn vị nhỏ nhất của phần mềm.

c)

Hiệu suất của toàn bộ hệ thống.

d)

Khả năng sử dụng của phần mềm.

50.

Kiểm thử hệ thống (System Testing) tập trung vào việc kiểm tra những yếu tố nào sau đây?

a)

Kiểm tra toàn bộ hệ thống để đảm bảo nó hoạt động đúng theo yêu cầu của người dùng.

b)

Kiểm thử từng module nhỏ của hệ thống

c)

Kiểm thử giao diện người dùng của hệ thống.

d)

Kiểm thử hiệu năng của từng module nhỏ.

51.

Khi nào nên thực hiện kiểm thử chấp nhận (Acceptance Testing)?

a)

Sau khi hoàn thành việc viết code cho từng module nhỏ.

b)

Trước khi bắt đầu viết code.

c)

Trước khi đưa sản phẩm vào sử dụng chính thức.

d)

Trong quá trình phát triển phần mềm.

52.

Trong quá trình thực hiện kiểm thử, bạn phát hiện một lỗi nghiêm trọng ảnh hưởng đến chức năng cốt lõi của phần mềm. Hành động đầu tiên bạn nên làm là gì?

a)

Tiếp tục kiểm thử các chức năng khác.

b)

Bỏ qua lỗi này và tiếp tục kiểm thử.

c)

Báo cáo lỗi ngay lập tức cho nhóm phát triển để khắc phục.

d)

Tự mình sửa lỗi và tiếp tục kiểm thử.

53.

Khi áp dụng kỹ thuật phân vùng tương đương để thiết kế các trường hợp kiểm thử cho một trường nhập dữ liệu số nguyên có phạm vi từ 1 đến 100, bạn sẽ chọn những giá trị nào để đại diện cho các lớp tương đương?

a)

1, 50, 100

b)

0, 50, 101

c)

0, 1, 50, 100, 101

d)

Chỉ 50

54.

Bạn đang thiết kế các trường hợp kiểm thử cho một trường nhập liệu mật khẩu có yêu cầu độ dài từ 8 đến 15 ký tự. Theo kỹ thuật phân vùng tương đương, bạn sẽ chọn những giá trị nào để kiểm thử?

a)

7 ký tự, 8 ký tự, 15 ký tự, 16 ký tự

b)

8 ký tự, 15 ký tự

c)

7 ký tự, 10 ký tự, 16 ký tự

d)

Chỉ kiểm tra với một chuỗi ngẫu nhiên có độ dài 10 ký tự

55.

Một hệ thống đăng nhập yêu cầu mật khẩu tối thiểu 8 ký tự và phải chứa ít nhất một chữ số. Khi áp dụng kỹ thuật phân vùng tương đương, bạn sẽ thiết kế các trường hợp kiểm thử như thế nào?

a)

Mật khẩu 7 ký tự, mật khẩu 8 ký tự chỉ chứa chữ, mật khẩu 8 ký tự có ít nhất 1 số

b)

Mật khẩu rỗng, mật khẩu 7 ký tự, mật khẩu 8 ký tự chỉ chứa chữ, mật khẩu 8 ký tự có ít nhất 1 số, mật khẩu 10 ký tự

c)

Mật khẩu 8 ký tự chỉ chứa chữ, mật khẩu 8 ký tự có ít nhất 1 số

d)

Mật khẩu 8 ký tự, mậ

56.

Một ứng dụng yêu cầu người dùng nhập số điện thoại có đúng 10 chữ số. Các lớp tương đương hợp lệ và không hợp lệ là gì?

a)

Lớp hợp lệ: [Số điện thoại 10 chữ số]; Lớp không hợp lệ: [Số điện thoại khác 10 chữ số]

b)

Lớp hợp lệ: [Số điện thoại dưới 10 chữ số]; Lớp không hợp lệ: [Số điện thoại trên 10 chữ số]

c)

Lớp hợp lệ: [Số điện thoại từ 9 đến 11 chữ số]; Lớp không hợp lệ: [Số điện thoại khác 10 chữ số]

d)

Lớp hợp lệ: [Số điện thoại trên 10 chữ số]; Lớp không hợp lệ: [Số điện thoại dưới 10 chữ số]

57.

Trong một hệ thống, trường nhập liệu chỉ chấp nhận các giá trị dương. Đâu là các lớp tương đương?

a)

[0], [1 trở lên]

b)

[Số âm], [0], [Số dương]

c)

[0-100], [100 trở lên]

d)

[Số dương]

58.

Một form yêu cầu người dùng nhập tuổi từ 1 đến 120. Để kiểm thử form này, đâu là lớp tương đương hợp lệ và không hợp lệ cần kiểm tra?

a)

Lớp hợp lệ: [1-120]; Lớp không hợp lệ: [Dưới 1], [Trên 120]

b)

Lớp hợp lệ: [1-100]; Lớp không hợp lệ: [Dưới 0]

c)

Lớp hợp lệ: [0-120]; Lớp không hợp lệ: [Trên 120]

d)

Lớp hợp lệ: [1-120]; Lớp không hợp lệ: [0-100]

59.

Một hàm tính giai thừa chỉ chấp nhận số nguyên không âm. Sử dụng kỹ thuật phân vùng tương đương, bạn sẽ chọn những giá trị nào?

a)

0, 1, 5, 10

b)

-1, 0, 1, 5

c)

1, 5, 10

d)

0, 5, 10