JavaScript is required
Danh sách đề

100+ câu hỏi trắc nghiệm Lập trình nâng cao có lời giải chi tiết

50 câu hỏi 60 phút

Thẻ ghi nhớ
Luyện tập
Thi thử
Nhấn để lật thẻ
1 / 50

Anh (Chị) hãy cho biết, đối tượng là gì?

A.

Là một thực thể

B.

Là một khuôn mẫu được tạo ra trong phần mềm

C.

Là biểu diễn của một thực thể trong thế giới thực của phần mềm

D.

Là nhóm thực thể có thuộc tính chung

Đáp án

Đối tượng (Object) là một khái niệm cốt lõi trong lập trình hướng đối tượng (OOP). Nó là một thực thể có trạng thái (được biểu diễn bằng các thuộc tính) và hành vi (được biểu diễn bằng các phương thức). Trong ngữ cảnh phần mềm, đối tượng là biểu diễn của một thực thể trong thế giới thực (ví dụ: một người, một cuốn sách, một tài khoản ngân hàng) hoặc một khái niệm trừu tượng (ví dụ: một cửa sổ, một nút bấm) dưới dạng một cấu trúc dữ liệu và các hàm tương tác với cấu trúc dữ liệu đó.

A. Là một thực thể. - Chưa đủ chính xác, vì thực thể có thể là bất cứ thứ gì, cần làm rõ hơn trong ngữ cảnh lập trình.

B. Là một khuôn mẫu được tạo ra trong phần mềm. - Khuôn mẫu ở đây có thể hiểu là class. Đối tượng là thể hiện (instance) của class, không phải là khuôn mẫu.

C. Là biểu diễn của một thực thể trong thế giới thực của phần mềm. - Đây là đáp án chính xác nhất, vì nó thể hiện rõ mối liên hệ giữa đối tượng trong phần mềm và thực thể ngoài đời thực.

D. Là nhóm thực thể có thuộc tính chung. - Đây là định nghĩa gần với khái niệm về lớp (class) hơn là đối tượng.

Danh sách câu hỏi:

Câu 1:

Anh (Chị) hãy cho biết, đối tượng là gì?

Lời giải:
Đáp án đúng: C

Đối tượng (Object) là một khái niệm cốt lõi trong lập trình hướng đối tượng (OOP). Nó là một thực thể có trạng thái (được biểu diễn bằng các thuộc tính) và hành vi (được biểu diễn bằng các phương thức). Trong ngữ cảnh phần mềm, đối tượng là biểu diễn của một thực thể trong thế giới thực (ví dụ: một người, một cuốn sách, một tài khoản ngân hàng) hoặc một khái niệm trừu tượng (ví dụ: một cửa sổ, một nút bấm) dưới dạng một cấu trúc dữ liệu và các hàm tương tác với cấu trúc dữ liệu đó.

A. Là một thực thể. - Chưa đủ chính xác, vì thực thể có thể là bất cứ thứ gì, cần làm rõ hơn trong ngữ cảnh lập trình.

B. Là một khuôn mẫu được tạo ra trong phần mềm. - Khuôn mẫu ở đây có thể hiểu là class. Đối tượng là thể hiện (instance) của class, không phải là khuôn mẫu.

C. Là biểu diễn của một thực thể trong thế giới thực của phần mềm. - Đây là đáp án chính xác nhất, vì nó thể hiện rõ mối liên hệ giữa đối tượng trong phần mềm và thực thể ngoài đời thực.

D. Là nhóm thực thể có thuộc tính chung. - Đây là định nghĩa gần với khái niệm về lớp (class) hơn là đối tượng.

Câu 2:

Anh (Chị) hãy chọn đáp án SAI?

Lời giải:
Đáp án đúng: A

Trong C/C++, kiểu dữ liệu char được sử dụng để lưu trữ một ký tự duy nhất. Ký tự này được đặt trong cặp dấu nháy đơn (' '), không phải dấu nháy kép (" "). Do đó, phương án A sai vì sử dụng dấu nháy kép cho ký tự 'A'. Các phương án còn lại đều đúng:

  • B. Một biến char có thể được gán một giá trị số nguyên, giá trị này sẽ được hiểu là mã ASCII của ký tự tương ứng.
  • C. signed char có thể lưu trữ các giá trị âm.
  • D. Một mảng các ký tự (char[]) có thể được khởi tạo bằng một chuỗi ký tự, chuỗi này được đặt trong dấu nháy kép.
Lời giải:
Đáp án đúng: D
Trong C++, một lớp có thể kế thừa từ nhiều lớp cha. Đây được gọi là đa kế thừa (multiple inheritance). Vì vậy, một lớp trong C++ có thể có nhiều hơn một lớp cha. Do đó, đáp án A, B, C đều không chính xác.

Câu 4:

Anh (Chị) hãy chọn phát biểu đúng về tính đóng kín trong lập trình hướng đối tượng của C++?

Lời giải:
Đáp án đúng: A
Tính đóng gói (Encapsulation) trong lập trình hướng đối tượng (OOP) là việc gói gọn dữ liệu (thuộc tính) và các phương thức (hành vi) thao tác trên dữ liệu đó vào trong một đơn vị duy nhất, thường là một lớp (class). Mục đích chính của tính đóng gói là che giấu thông tin (information hiding), tức là che giấu các chi tiết thực thi bên trong của đối tượng và chỉ cho phép truy cập thông qua các phương thức công khai (public methods). * **Đáp án A: Tiến trình che dấu việc thực thi chi tiết một đối tượng.** Đây là định nghĩa chính xác của tính đóng gói. Nó giúp bảo vệ dữ liệu của đối tượng khỏi sự truy cập trực tiếp và không mong muốn từ bên ngoài, đồng thời cho phép thay đổi cách thực thi bên trong mà không ảnh hưởng đến các phần khác của chương trình. * **Đáp án B: Các hành động và thuộc tính định nghĩa trong một lớp có thể được thừa kế hoặc sử dụng lại bởi các lớp khác.** Đây là định nghĩa của tính kế thừa (Inheritance), không phải tính đóng gói. * **Đáp án C: Nhiều hình thức, hành động cùng tên có thể được thực hiện khác nhau đối với các đối tượng hoặc các lớp các khác nhau.** Đây là định nghĩa của tính đa hình (Polymorphism), không phải tính đóng gói. * **Đáp án D: Tiến trình truyền dữ liệu vào biến của đối tượng.** Đây không phải là định nghĩa của tính đóng gói. Việc truyền dữ liệu vào biến của đối tượng chỉ là một phần nhỏ trong quá trình sử dụng đối tượng.

Câu 5:

Anh (Chị) hãy chọn phát biểu đúng về tính đa hình trong lập trình hướng đối tượng của C++?

Lời giải:
Đáp án đúng: C
Tính đa hình (Polymorphism) trong lập trình hướng đối tượng (OOP) cho phép một hành động hoặc phương thức có thể thực hiện theo nhiều cách khác nhau tùy thuộc vào đối tượng hoặc lớp mà nó được gọi đến. Phương án A mô tả về tính đóng gói (Encapsulation). Phương án B mô tả về tính kế thừa (Inheritance). Phương án D mô tả về việc ghi đè phương thức (Method Overriding), là một cơ chế thể hiện tính đa hình nhưng không phải là định nghĩa đầy đủ về tính đa hình. Phương án C mô tả chính xác định nghĩa về tính đa hình: nhiều hình thức (đa hình thái), hành động cùng tên nhưng thực hiện khác nhau.
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Câu 8:

Anh (Chị) hãy chọn cách khai báo đúng khi định nghĩa hàm thành viên ở ngoài lớp?

Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP