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 - Đề 9

50 câu hỏi 60 phút

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

The design of classes in a way that hides the details of implementation from the user is known as:

A.

Encapsulation

B.

Information Hiding

C.

Data abstraction

D.

All of the above

Đáp án
Đáp án đúng: D
Câu hỏi này kiểm tra kiến thức về các khái niệm cơ bản trong lập trình hướng đối tượng (OOP), đặc biệt là liên quan đến việc ẩn thông tin và quản lý dữ liệu.

* Encapsulation (Đóng gói): Là việc gói dữ liệu (thuộc tính) và phương thức (hành vi) hoạt động trên dữ liệu đó vào trong một đơn vị duy nhất, thường là một lớp. Mục đích là để bảo vệ dữ liệu khỏi sự truy cập trực tiếp từ bên ngoài và kiểm soát cách dữ liệu được sử dụng.

* Information Hiding (Ẩn thông tin): Là nguyên tắc che giấu các chi tiết triển khai bên trong của một lớp và chỉ cung cấp giao diện cần thiết cho người dùng. Điều này giúp giảm sự phụ thuộc giữa các phần của chương trình và làm cho mã dễ bảo trì và thay đổi hơn. Ẩn thông tin thường được thực hiện thông qua việc sử dụng các từ khóa như `private`, `protected` để giới hạn phạm vi truy cập.

* Data Abstraction (Trừu tượng hóa dữ liệu): Là quá trình đơn giản hóa các đối tượng phức tạp bằng cách chỉ hiển thị các đặc điểm và hành vi cần thiết cho người dùng, đồng thời ẩn đi các chi tiết không cần thiết. Abstraction tập trung vào "cái gì" chứ không phải "như thế nào".

Trong ngữ cảnh của câu hỏi, việc thiết kế các lớp theo cách ẩn các chi tiết triển khai khỏi người dùng liên quan đến cả đóng gói (encapsulation), ẩn thông tin (information hiding) và trừu tượng hóa dữ liệu (data abstraction). Do đó, đáp án chính xác nhất là "All of the above".

Danh sách câu hỏi:

Câu 1:

The design of classes in a way that hides the details of implementation from the user is known as:

Lời giải:
Đáp án đúng: D
Câu hỏi này kiểm tra kiến thức về các khái niệm cơ bản trong lập trình hướng đối tượng (OOP), đặc biệt là liên quan đến việc ẩn thông tin và quản lý dữ liệu.

* Encapsulation (Đóng gói): Là việc gói dữ liệu (thuộc tính) và phương thức (hành vi) hoạt động trên dữ liệu đó vào trong một đơn vị duy nhất, thường là một lớp. Mục đích là để bảo vệ dữ liệu khỏi sự truy cập trực tiếp từ bên ngoài và kiểm soát cách dữ liệu được sử dụng.

* Information Hiding (Ẩn thông tin): Là nguyên tắc che giấu các chi tiết triển khai bên trong của một lớp và chỉ cung cấp giao diện cần thiết cho người dùng. Điều này giúp giảm sự phụ thuộc giữa các phần của chương trình và làm cho mã dễ bảo trì và thay đổi hơn. Ẩn thông tin thường được thực hiện thông qua việc sử dụng các từ khóa như `private`, `protected` để giới hạn phạm vi truy cập.

* Data Abstraction (Trừu tượng hóa dữ liệu): Là quá trình đơn giản hóa các đối tượng phức tạp bằng cách chỉ hiển thị các đặc điểm và hành vi cần thiết cho người dùng, đồng thời ẩn đi các chi tiết không cần thiết. Abstraction tập trung vào "cái gì" chứ không phải "như thế nào".

Trong ngữ cảnh của câu hỏi, việc thiết kế các lớp theo cách ẩn các chi tiết triển khai khỏi người dùng liên quan đến cả đóng gói (encapsulation), ẩn thông tin (information hiding) và trừu tượng hóa dữ liệu (data abstraction). Do đó, đáp án chính xác nhất là "All of the above".

Câu 2:

In case of a copy constructor, which of the following is true?

Lời giải:
Đáp án đúng: D
Constructor sao chép được sử dụng để khởi tạo một đối tượng mới từ một đối tượng đã tồn tại. Nó cũng có thể được sử dụng để sao chép một đối tượng vào một đối tượng đã tồn tại (mặc dù toán tử '=' thường được sử dụng cho mục đích này). Do đó, tất cả các tùy chọn A, B và C đều đúng.
Lời giải:
Đáp án đúng: C

Trong ngôn ngữ lập trình C, quy tắc đặt tên biến như sau:

  • Tên biến có thể chứa chữ cái (a-z, A-Z), chữ số (0-9) và dấu gạch dưới (_).
  • Tên biến phải bắt đầu bằng một chữ cái hoặc dấu gạch dưới.
  • Tên biến phân biệt chữ hoa và chữ thường.
  • Tên biến không được trùng với các từ khóa của ngôn ngữ C.

Phân tích các phương án:

  • A. diem toan: Sai, vì có khoảng trắng trong tên biến.
  • B. 3diemtoan: Sai, vì bắt đầu bằng chữ số.
  • C. _diemtoan: Đúng, vì bắt đầu bằng dấu gạch dưới và tuân thủ các quy tắc khác.
  • D. -diemtoan ZUNIA12: Sai, vì bắt đầu bằng dấu gạch ngang và có khoảng trắng.

Vậy, đáp án đúng là C.

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

Trong ngôn ngữ lập trình C, để in ra một số thực có độ chính xác kép (double), ta sử dụng xâu định dạng "%e" (hoặc "%f", "%g"). Xâu định dạng "%e" biểu diễn số thực dưới dạng ký pháp khoa học (ví dụ: 1.234567e+00). Các lựa chọn khác không phù hợp:

  • "%u": dùng để in ra số nguyên không dấu (unsigned integer).
  • "%o": dùng để in ra số nguyên ở hệ bát phân (octal).
  • "%p": dùng để in ra địa chỉ bộ nhớ (pointer).
Lời giải:
Đáp án đúng: C

Trong các phép gán kết hợp của C++, phép dịch bit phải (>>=) chỉ được phép sử dụng với các biến kiểu số nguyên (ví dụ: int, long). Vì a và b được khai báo là số thực (ví dụ: float, double), nên phép gán a >>= b không hợp lệ.

A. (a+=b): Phép cộng và gán, tương đương a = a + b, hợp lệ với số thực.

B. (a-=b): Phép trừ và gán, tương đương a = a - b, hợp lệ với số thực.

C. (a>>=b): Phép dịch bit phải và gán, không hợp lệ với số thực.

D. (a*=b): Phép nhân và gán, tương đương a = a * b, hợp lệ với số thực.

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

Member functions of a class are normally made ___ and data members of a class are normally made ___ .

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

The STL Container adapters contains the ___ , ___ and ___ STL containers.

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

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

Câu nào sau đây là đúng về chức năng này

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

Which properly declares a variable of struct foo?

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

Trong chương trình C, câu lệnh đầu tiên sẽ được thực thi 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 26:

Cho biết giá trị của biểu thức 5>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
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:

Kết quả của chương trình sau là gì: #include #include void main() { clrscr(); int i; for (i = 1; i <= 24; i++); printf(“\n % d”, i); getch(); return; };

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:

Đoạn code nào sẽ hoán vị 2 số a và b:

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

Câu lệnh sau có ý nghĩa gì? FILE * fopen(tep1, ”r + ”);

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:

Đâu là phát biểu đúng về danh sách:

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:

Không gian nhớ dùng để lưu trữ các node của danh sách liên kết ké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 42:

Số màu có thể biểu diễn trong chế độ đồ họa do yếu tố nào quy định:

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:

Trong chế độ graphic, gốc tọ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 44:

Ngôn ngữ lập trình nào dưới đây là ngôn ngữ lập trình có cấu trúc?

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:

 Ngôn ngữ lập trình nào dưới đây là ngôn ngữ lập trình có cấu trúc?

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

 Lệnh fflush (stdin) 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

Câu 49:

 Độ ưu tiên đối với các toán tử logic 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 50:

 Cho các khai báo sau:

Void *tongquat;

Int *nguyen;

Char *kitu;

Phép gán nào là không hợ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