Lệnh nào trong các lệnh sau cho phép nhảy ra khỏi vòng lặp đến vị trí bất kì mong muốn
Trả lời:
Đáp án đúng: C
Lệnh `goto` trong C/C++ cho phép nhảy đến một nhãn (label) được định nghĩa trước trong chương trình. Lệnh `break` chỉ cho phép thoát khỏi vòng lặp hiện tại, còn `continue` bỏ qua phần còn lại của vòng lặp hiện tại và chuyển sang lần lặp tiếp theo. Do đó, chỉ có `goto` cho phép nhảy đến vị trí bất kì mong muốn.
Câu hỏi liên quan
Lời giải:
Đáp án đúng: B
In C++, a reference is an alias for an existing variable. Once initialized, a reference cannot be reassigned to refer to a different variable. Attempting to reassign a reference will instead change the value of the original variable it refers to. Therefore, the statement "One can reassign reference after it is initialized" is false.
Lời giải:
Đáp án đúng: B
Destructor là một hàm đặc biệt trong lập trình hướng đối tượng (OOP) được tự động gọi khi một đối tượng của một lớp bị hủy (ví dụ, khi đối tượng ra khỏi phạm vi hoặc bị xóa bằng toán tử delete
). Chức năng chính của destructor là giải phóng bất kỳ tài nguyên nào mà đối tượng đã chiếm giữ trong suốt vòng đời của nó, chẳng hạn như bộ nhớ được cấp phát động. Điều này giúp ngăn ngừa rò rỉ bộ nhớ và đảm bảo chương trình hoạt động ổn định.
Phân tích các lựa chọn:
- A: Mô tả constructor (hàm khởi tạo), không phải destructor.
- B: Mô tả chính xác chức năng của destructor.
- C: Không phải là chức năng chính xác của destructor. Destructor giải phóng bộ nhớ, không thay đổi giá trị của nó.
- D: Quá chung chung và không liên quan cụ thể đến destructor.
Lời giải:
Đáp án đúng: B
Đoạn mã có lỗi vì `Derived` kế thừa `Base` ở chế độ `protected`. Điều này có nghĩa là, từ bên ngoài lớp `Derived`, không thể coi `Derived` là một loại `Base` công khai. Do đó, việc gán một con trỏ kiểu `Base*` cho một đối tượng `Derived` được tạo bằng `new Derived()` sẽ gây ra lỗi biên dịch, vì nó vi phạm quy tắc truy cập kế thừa protected.
Phương án A sai vì có lỗi trong code.
Phương án B đúng vì giải thích chính xác lỗi, không thể tạo một con trỏ `Base` tới `Derived` vì nó không được kế thừa công khai.
Phương án C sai vì ta hoàn toàn có thể dùng con trỏ lớp cha để trỏ tới đối tượng lớp con nếu lớp con được kế thừa từ lớp cha theo chế độ public.
Phương án D sai vì không bắt buộc phải có constructor cho Derived, vì nếu không có constructor nào được định nghĩa thì trình biên dịch sẽ tự tạo ra một default constructor.
Phương án A sai vì có lỗi trong code.
Phương án B đúng vì giải thích chính xác lỗi, không thể tạo một con trỏ `Base` tới `Derived` vì nó không được kế thừa công khai.
Phương án C sai vì ta hoàn toàn có thể dùng con trỏ lớp cha để trỏ tới đối tượng lớp con nếu lớp con được kế thừa từ lớp cha theo chế độ public.
Phương án D sai vì không bắt buộc phải có constructor cho Derived, vì nếu không có constructor nào được định nghĩa thì trình biên dịch sẽ tự tạo ra một default constructor.
Lời giải:
Đáp án đúng: A
Truyền tham trị là phương pháp truyền bản sao của giá trị tham số vào hàm. Điều này có nghĩa là hàm làm việc với một bản sao của dữ liệu gốc, và mọi thay đổi được thực hiện trên bản sao này trong hàm sẽ không ảnh hưởng đến giá trị của biến ban đầu bên ngoài hàm.
Phương án A mô tả chính xác khái niệm này: "Truyền bản sao của tham số vào biến. Tất cả các thay đổi của biến được thực hiện bởi hàm không ảnh hưởng đến giá trị của biến bên ngoài hàm."
Các phương án khác không chính xác:
- B: Truyền địa chỉ của biến vào hàm là truyền tham chiếu.
- C: Truyền giá trị của tham số vào biến chưa đủ rõ ý, cần nhấn mạnh là bản sao.
- D: Tương tự C, chưa đủ rõ ràng và dễ gây nhầm lẫn.
Phương án A mô tả chính xác khái niệm này: "Truyền bản sao của tham số vào biến. Tất cả các thay đổi của biến được thực hiện bởi hàm không ảnh hưởng đến giá trị của biến bên ngoài hàm."
Các phương án khác không chính xác:
- B: Truyền địa chỉ của biến vào hàm là truyền tham chiếu.
- C: Truyền giá trị của tham số vào biến chưa đủ rõ ý, cần nhấn mạnh là bản sao.
- D: Tương tự C, chưa đủ rõ ràng và dễ gây nhầm lẫn.
Lời giải:
Đáp án đúng: D
Trong ngôn ngữ lập trình C, các toán tử `+=`, `*=`, và `=` được sử dụng để gán giá trị. Toán tử `&=` là toán tử AND bitwise và gán. Tuy nhiên, nếu `a` và `b` là các số thực (ví dụ: `float` hoặc `double`), thì toán tử `&=` không được định nghĩa để hoạt động trực tiếp trên kiểu số thực. Do đó, biểu thức `(a&=b)` là không đúng cú pháp trong trường hợp `a` và `b` là 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
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

Bộ Đồ Án Tốt Nghiệp Ngành Trí Tuệ Nhân Tạo Và Học Máy
89 tài liệu310 lượt tải

Bộ 120+ Đồ Án Tốt Nghiệp Ngành Hệ Thống Thông Tin
125 tài liệu441 lượt tải

Bộ Đồ Án Tốt Nghiệp Ngành Mạng Máy Tính Và Truyền Thông
104 tài liệu687 lượt tải

Bộ Luận Văn Tốt Nghiệp Ngành Kiểm Toán
103 tài liệu589 lượt tải

Bộ 370+ Luận Văn Tốt Nghiệp Ngành Kế Toán Doanh Nghiệp
377 tài liệu1030 lượt tải

Bộ Luận Văn Tốt Nghiệp Ngành Quản Trị Thương Hiệu
99 tài liệu1062 lượt tải
ĐĂNG KÝ GÓI THI VIP
- Truy cập hơn 100K đề thi thử và chính thức các năm
- 2M câu hỏi theo các mức độ: Nhận biết – Thông hiểu – Vận dụng
- Học nhanh với 10K Flashcard Tiếng Anh theo bộ sách và chủ đề
- Đầy đủ: Mầm non – Phổ thông (K12) – Đại học – Người đi làm
- Tải toàn bộ tài liệu trên TaiLieu.VN
- Loại bỏ quảng cáo để tăng khả năng tập trung ôn luyện
- Tặng 15 ngày khi đăng ký gói 3 tháng, 30 ngày với gói 6 tháng và 60 ngày với gói 12 tháng.
77.000 đ/ tháng