JavaScript is required
Danh sách đề

400+ câu hỏi trắc nghiệm Lập trình hướng đối tượng kèm đáp án và lời giải minh họa - Đề 3

50 câu hỏi 60 phút

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

Hãy xem xét đoạn mã sau:

class A

{

protected;
int a,b;
public:
float F1,F2;

};

class B:public A

{
}

Hỏi: B sử dụng được các biến thành viên nào của A

A.

a, b, F1, F2

B.

F1, F2

C.

a, b

D.

Không sử dụng được biến thành viên nào

Đáp án
Trong C++, khi một lớp (class) kế thừa từ một lớp khác, nó sẽ có quyền truy cập vào các thành viên của lớp cơ sở (base class) theo các mức độ truy cập khác nhau. Trong trường hợp này, lớp `B` kế thừa từ lớp `A` theo kiểu `public`. Điều này có nghĩa là: - Các thành viên `public` của `A` (ở đây là `F1` và `F2`) sẽ vẫn là `public` trong `B`, và do đó `B` có thể sử dụng chúng. - Các thành viên `protected` của `A` (ở đây là `a` và `b`) có thể được truy cập từ bên trong lớp `B` (hoặc từ các lớp con khác của `A`). Vì vậy, lớp `B` có thể sử dụng được cả `a`, `b`, `F1` và `F2`. Do đó, đáp án đúng là a, b, F1, F2

Danh sách câu hỏi:

Lời giải:
Đáp án đúng: A
Trong C++, khi một lớp (class) kế thừa từ một lớp khác, nó sẽ có quyền truy cập vào các thành viên của lớp cơ sở (base class) theo các mức độ truy cập khác nhau. Trong trường hợp này, lớp `B` kế thừa từ lớp `A` theo kiểu `public`. Điều này có nghĩa là: - Các thành viên `public` của `A` (ở đây là `F1` và `F2`) sẽ vẫn là `public` trong `B`, và do đó `B` có thể sử dụng chúng. - Các thành viên `protected` của `A` (ở đây là `a` và `b`) có thể được truy cập từ bên trong lớp `B` (hoặc từ các lớp con khác của `A`). Vì vậy, lớp `B` có thể sử dụng được cả `a`, `b`, `F1` và `F2`. Do đó, đáp án đúng là a, b, F1, F2

Câu 2:

Hãy xem xét định nghĩa hàm dựng nào sau đây là đúng nhất?

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

Hàm dựng (constructor) là một hàm đặc biệt trong một lớp, có những đặc điểm sau:

  1. Tên của hàm dựng phải trùng với tên của lớp.
  2. Hàm dựng được tự động gọi ngay sau khi một đối tượng của lớp được khai báo (tạo ra).
  3. Hàm dựng không được kế thừa. Điều này là do hàm dựng chịu trách nhiệm khởi tạo một đối tượng thuộc lớp cụ thể đó, và việc kế thừa hàm dựng sẽ gây ra xung đột và khó khăn trong việc quản lý việc khởi tạo đối tượng của các lớp con.
  4. Hàm dựng được gọi khi khai báo đối tượng trực tiếp hoặc thông qua con trỏ đối tượng.

Vì vậy, đáp án đúng nhất là phương án 4.

Câu 3:

Để khai báo mảng số thực động thì dùng đoạn mã nào sau đây:

Lời giải:
Đáp án đúng: A
Đề bài yêu cầu khai báo mảng số thực động. Điều này có nghĩa là số lượng phần tử của mảng chỉ được xác định trong quá trình chạy chương trình (run-time), chứ không phải lúc biên dịch (compile-time). * **Đáp án 1:** Khai báo `float *M;` là khai báo một con trỏ `M` kiểu `float`. Sau đó, `new float[n]` cấp phát một vùng nhớ có `n` phần tử kiểu `float` và gán địa chỉ của vùng nhớ đó cho `M`. Đây là cách khai báo mảng động trong C++. * **Đáp án 2:** `float M[n];` Khai báo này có thể biên dịch được trong một số trình biên dịch (như GCC) như một mở rộng, tuy nhiên nó không phải là cách khai báo mảng động theo chuẩn C++. Hơn nữa, kích thước mảng `n` phải được biết tại thời điểm biên dịch trong C++ chuẩn. * **Đáp án 3:** Tương tự đáp án 2, `int n; float M[n];` cũng không phải cách khai báo mảng động chuẩn. * **Đáp án 4:** `float M[int n];` Sai cú pháp, không hợp lệ trong C++. Vậy, đáp án đúng là đáp án 1.
Lời giải:
Đáp án đúng: A
Khi bạn có một con trỏ đến một đối tượng (ví dụ: `pobj` là con trỏ đến một đối tượng của lớp `LopA`), bạn sử dụng toán tử `->` để truy cập các thành viên (biến hoặc hàm) của đối tượng mà con trỏ trỏ tới. Trong trường hợp này, `pobj->nhap()` là cách chính xác để gọi phương thức `nhap()` của đối tượng mà `pobj` đang trỏ đến. Các phương án khác không đúng vì chúng sử dụng sai cú pháp để truy cập thành viên thông qua con trỏ.

Câu 5:

Trong kế thừa. Lớp mới có thuật ngữ tiếng Anh là: 

Lời giải:
Đáp án đúng: A
Trong lập trình hướng đối tượng, khi một lớp mới được tạo ra dựa trên một lớp đã tồn tại (thừa kế từ lớp đó), lớp mới này được gọi là lớp con, lớp dẫn xuất (derived class). Lớp ban đầu được gọi là lớp cha (base class). * **Derived Class:** Là lớp mới được tạo ra, kế thừa các thuộc tính và phương thức từ lớp cha. * **Base Class:** Là lớp gốc, lớp cha mà các lớp khác kế thừa. * **Inheritance Class:** Không phải là một thuật ngữ chính xác. "Inheritance" là khái niệm kế thừa, không phải là tên của một lớp. * **Object Class:** Là lớp cơ sở nhất trong một số ngôn ngữ lập trình, từ đó tất cả các lớp khác kế thừa (ví dụ: `Object` trong Java).

Câu 6:

Cho đoạn chương trình sau:

                                                            

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 7:

Thành phần private của lớp là thành phần:

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:

Khái niệm của Phương thức là:

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 9:

Cho lớp Điểm trong hệ tọa độ xOy. Các phương thức có thể có của lớp Điểm là:

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 10:

Tính chất kế thừa dạng Public là:

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 11:

Đặc điểm của Hàm bạn?

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 12:

Lớp Bạn của một lớp là:

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 13:

Cho đoạn chương trình sau:

class A;
class B;
class A{
friend class B;
...
};
class B {

};
Dòng lệnh friend class B; có nghĩa là:

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 14:

Cần xây dựng lớp đường thẳng y = ax+b. Thuộc tính của lớp đường thẳng này được xác định là:

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 17:

Xây dựng hàm tạo sao chép của lớp Diem trong C++ khai báo theo cú pháp sau:

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 18:

Trong lớp phân số khai báo: Phanso(int ts=0,int ms=1); Là:

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 19:

Cho lớp B, C kế thừa lớp A; Lớp D kế thừa lớp B và C. Khi đó đối tượng của lớp D không thể kế thừa được thành phần của A. Cần phải:

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 20:

Các lớp có thể kế thừa từ lớp động vật là:

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 22:

Thông thường khi xây dựng lớp trong C#, với mỗi khai báo thuộc tính của lớp ta đều xây dựng thêm hai phương thức set và get dùng để: 

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 24:

Chọn phát biểu đúng trong các phát biểu sau:

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 25:

Hàm mà bất kỳ lớp nào cũng có là: 

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 26:

Từ khóa virtual khi đứng trước một hàm nào đó thì có ý nghĩa gì?

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 28:

Lập trình hướng đối tượng là gì?
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 29:

Đoạn chương trình sau khi biên dịch phát sinh ra lỗi không khai báo biến x tại dòng:
Đoạn chương trình sau khi biên dịch phát sinh ra lỗi không khai báo biến x tại dòng: (ảnh 1)
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 30:

Các hàm tạo có thể có là:
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 32:

Khi nạp chồng các hàm thì điều kiện khác nhau giữa các hàm sẽ là:
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 33:

Tính chất của kế thừa dạng Private là:
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 34:

Trong kế thừa nhiều mức có cho phé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

Câu 35:

Cho đoạn chương trình sau:
class A{

public:
void Xuat();
};
class B:public A {
….
public:
void Xuat();
};
void main() {
B O;
Nếu gọi O.Xuat(); thì sẽ.
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 37:

Xây dựng hàm tạo sao chép của lớp Diem trong C++ khai báo theo cú pháp sau:
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 38:

Các phương thức cơ bản của một chiếc máy giặt là:
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 39:

Xây dựng lớp Time trong java như hình trên, phương thức khởi tạo public Time() làm nhiệm vụ:
Xây dựng lớp Time trong java như hình trên, phương thức khởi tạo public Time() làm nhiệm vụ: (ảnh 1)
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 40:

Thông thường khi xây dựng lớp trong C#, với mỗi khai báo thuộc tính của lớp ta đều xây dựng thêm hai phương thức set và get dùng để:
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 42:

Cho hình ảnh trên, hình ảnh gợi cho ta về:
Cho hình ảnh trên, hình ảnh gợi cho ta về: (ảnh 1)
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 43:

Cho đoạn chương trình như hình trên, lớp Convat được gọi là:
Cho đoạn chương trình như hình trên, lớp Convat được gọi là: (ảnh 1)
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 44:

Cho đoạn chương trình như hình trên, dòng khai báo virtual void xungten() là:
Cho đoạn chương trình như hình trên, dòng khai báo virtual void xungten() là: (ảnh 1)
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 45:

Một bạn xây dựng lớp Ciclre(hình tròn) kế thừa lớp point (điểm) như trên. Một bạn nhận xét chương trình sẽ bị lỗi tại dòng số 6 vì bạn chưa khai báo lớp point. Theo bạn nhận xét này:
Một bạn xây dựng lớp Ciclre(hình tròn) kế thừa lớp point (điểm) như trên. Một bạn nhận xét chương trình sẽ bị lỗi tại dòng số 6 vì bạn chưa khai báo lớp point. Theo bạn nhận xét này: (ảnh 1)
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 46:

Giả sử cho các lớp như trong khai báo như trên. Kết quả hiển thị của đoạn chương trình là:
Giả sử cho các lớp như trong khai báo như trên. Kết quả hiển thị của đoạn chương trình là: (ảnh 1)
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 47:

Khi đa năng hóa toán tử nhập (trích dòng) cho lớp SP ta khai báo dòng tiêu đề như sau:
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 48:

Cho các lớp sau:
class Thi_sinh
{
int SBD;
char Hoten[40]
int Gt;
….
};
class Ds_thi_sinh
{
Thi_sinh *ds;
int sothisinh;

};
Quan hệ giữa lớp Ds_thi_sinh và Thi_sinh là:
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 50:

Đoạn chương trình trên xây dựng template tìm giá trị lớn nhất. Việc sử dụng template này để xác định giá trị lớn nhất của hai biến ten1, ten2 là:
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