JavaScript is required
Danh sách đề

700+ câu hỏi trắc nghiệm Ngôn ngữ lập trình C có lời giải chi tiết - Đề 8

50 câu hỏi 60 phút

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

A class is a basic unit of object-oriented programming

A.

TRUE

B.

FALSE

Đáp án
Đáp án đúng: B
Trong lập trình hướng đối tượng (OOP), lớp (class) là một khái niệm cơ bản và quan trọng. Lớp là một bản thiết kế hoặc khuôn mẫu để tạo ra các đối tượng. Nó định nghĩa các thuộc tính (dữ liệu) và phương thức (hành vi) mà các đối tượng thuộc lớp đó sẽ có. Do đó, khẳng định "Lớp là một đơn vị cơ bản của lập trình hướng đối tượng" là đúng.

Danh sách câu hỏi:

Lời giải:
Đáp án đúng: B
Trong lập trình hướng đối tượng (OOP), lớp (class) là một khái niệm cơ bản và quan trọng. Lớp là một bản thiết kế hoặc khuôn mẫu để tạo ra các đối tượng. Nó định nghĩa các thuộc tính (dữ liệu) và phương thức (hành vi) mà các đối tượng thuộc lớp đó sẽ có. Do đó, khẳng định "Lớp là một đơn vị cơ bản của lập trình hướng đối tượng" là đúng.
Lời giải:
Đáp án đúng: A
Câu hỏi này kiểm tra sự hiểu biết về cơ chế xử lý ngoại lệ trong lập trình. Khi một ngoại lệ (exception) được ném (thrown), chương trình sẽ tìm kiếm một khối `catch` phù hợp để xử lý ngoại lệ đó. Nếu không tìm thấy, chương trình có thể kết thúc hoặc chuyển giao việc xử lý ngoại lệ cho một trình xử lý mặc định của hệ thống.

Tuy nhiên, một khi ngoại lệ đã được ném và không có khối `catch` nào xử lý nó ngay tại điểm ném, chương trình sẽ không quay trở lại điểm ném đó. Thay vào đó, nó sẽ tiếp tục "unwind" stack (gỡ ngăn xếp) cho đến khi tìm thấy một trình xử lý ngoại lệ phù hợp hoặc kết thúc chương trình.

Vì vậy, câu trả lời là TRUE (Đúng).
Lời giải:
Đáp án đúng: A
Câu trả lời đúng là A. TRUE. Khi một đối tượng lớp được truyền cho một template hàm, template đó có thể sử dụng các toán tử (ví dụ: +, -, *, /, ==, !=, <, >, [], (), v.v.) trên đối tượng đó. Để điều này hoạt động, lớp đối tượng phải định nghĩa chồng (overload) các toán tử tương ứng. Nếu không, trình biên dịch sẽ không biết cách thực hiện các phép toán đó trên đối tượng của lớp, dẫn đến lỗi biên dịch. Việc overloading cho phép định nghĩa hành vi của các toán tử khi chúng được áp dụng cho các đối tượng của lớp cụ thể đó, giúp template hàm hoạt động chính xác với các kiểu dữ liệu khác nhau.
Lời giải:
Đáp án đúng: B
Trong đoạn chương trình C++ này, chúng ta cần xác định số lần mà constructor của lớp `Base` được gọi.

- Lớp `Sub1` kế thừa `Base` theo kiểu `virtual`. Điều này có nghĩa là nếu có nhiều lớp kế thừa `Base` thông qua `Sub1`, chỉ có một bản sao của `Base` được tạo ra.
- Lớp `Sub2` kế thừa `Base` theo kiểu thông thường (không `virtual`). Do đó, một bản sao mới của `Base` sẽ được tạo ra khi `Sub2` được khởi tạo.
- Lớp `Multi` kế thừa cả `Sub1` và `Sub2`. Khi một đối tượng `Multi` được tạo ra, constructor của `Base` sẽ được gọi một lần thông qua kế thừa `virtual` từ `Sub1`, và một lần nữa thông qua kế thừa thông thường từ `Sub2`.

Vì vậy, constructor của `Base` sẽ được gọi tổng cộng 2 lần.
Lời giải:
Đáp án đúng: A
Đoạn code C++ có một số vấn đề. Lớp `Base` định nghĩa một phương thức ảo thuần túy `Method` bằng `= 0`. Điều này có nghĩa là `Base` là một lớp trừu tượng (abstract class). Một lớp trừu tượng không thể được khởi tạo trực tiếp, và bất kỳ lớp con nào của nó phải cung cấp một định nghĩa cho tất cả các phương thức ảo thuần túy của nó, nếu không lớp con đó cũng sẽ là một lớp trừu tượng. Trong trường hợp này:

- Lớp `D1` kế thừa từ `Base`, nhưng không định nghĩa lại phương thức `Method`. Do đó, `D1` cũng là một lớp trừu tượng.
- Lớp `D2` kế thừa từ `D1`, và *có* định nghĩa lại phương thức `Method`. Tuy nhiên, lớp `D2` định nghĩa lại `Method` ở chế độ `private`, điều này khiến nó không thể được gọi từ bên ngoài lớp `D2` (nhưng vẫn thỏa mãn yêu cầu phải định nghĩa lại `Method` để không còn là abstract class nữa).

Mấu chốt của vấn đề là lớp `D1` phải định nghĩa lại phương thức `Method` (hoặc làm cho `D1` trở thành abstract class một cách tường minh nếu không muốn định nghĩa lại, nhưng trong trường hợp này thì `D2` vẫn phải định nghĩa lại).

Vậy đáp án đúng là: D. Class D1 must define “Method”

Câu 6:

Biến toàn cục 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 7:

Lệnh nào sau đây là SAI?

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

Câu 18:

Câu nào sau đây là đú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 20:

Đầu ra 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 21:

Kết quả của chương trình sẽ 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
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úng ta muốn làm tròn x, một số thực, thành một giá trị int. Cách thực hiện đúng 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
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

Câu 30:

Những phát biểu nào sau đây là đú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

Câu 31:

Hằng có thể được định nghĩa theo cách nào?

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:

Phép toán % 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 33:

Hàm clrscr() là hàm 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
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:

Khai báo hàm tìm giá trị lớn nhất trong một màng các số long dưới đây, khai báo nào đú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 37:

Phát biểu nào sau đây là sai khi nói đến tập tin:

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:

Giả sử f là con trỏ tệp nhị phân. Để đọc từ f cho biến x kiểu int, ta có thể 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 40:

Câu lệnh sau có ý nghĩa gì? int open(tep1, O_TRUNC);

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

Trong các khai báo sau, khai báo nào không đú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 43:

Một cây nhị phân được gọi là đúng nếu:

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:

Hàm closegraph() dùng để làm 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
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 47:

 Nếu x là một biến toàn cục và x không phải là một con trỏ thì:

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