Đáp án đúng: A
Để giải biểu thức -3 + 4 % 5 / 2
, ta cần tuân theo thứ tự ưu tiên của các toán tử:
%
(chia lấy dư)/
(chia)+
(cộng)
Vậy, ta thực hiện như sau:
4 % 5 = 4
(4 chia 5 dư 4)4 / 2 = 2
(4 chia 2 bằng 2)-3 + 2 = -1
(-3 cộng 2 bằng -1)
Vậy, kết quả cuối cùng là -1.
Câu hỏi liên quan
Phân tích câu hỏi:
Câu hỏi kiểm tra kiến thức về cách truy cập và gán giá trị cho các phần tử trong mảng ký tự (chuỗi) trong C/C++.
Đánh giá các phương án:
- Phương án A:
msg[2] = value;
Đây là một câu lệnh gán hợp lệ. Nó gán giá trị của biếnvalue
(kiểuchar
) cho phần tử thứ 3 (vì chỉ số mảng bắt đầu từ 0) của mảngmsg
. Vìmsg
là một mảng ký tự vàvalue
cũng là một ký tự, việc gán này hoàn toàn hợp lệ. - Phương án B:
msg = value;
Đây là một câu lệnh gán không hợp lệ. Trong C/C++, tên mảng (ví dụ:msg
) đại diện cho địa chỉ của phần tử đầu tiên trong mảng. Bạn không thể gán trực tiếp một giá trị (ở đây là một ký tựvalue
) cho địa chỉ của mảng. Điều này tương đương với việc cố gắng thay đổi địa chỉ mà mảng trỏ tới, điều này không được phép. - Phương án C: Cả hai câu trên (loại)
- Phương án D: Không câu nào đúng (loại)
Kết luận:
Chỉ có phương án A là đúng.
Trong C/C++, khi bạn cộng một con trỏ với một số nguyên, kết quả sẽ là một con trỏ mới trỏ đến một vị trí bộ nhớ khác. Vị trí bộ nhớ này được tính bằng cách lấy địa chỉ hiện tại của con trỏ, sau đó cộng thêm một số byte tương ứng với số nguyên nhân với kích thước của kiểu dữ liệu mà con trỏ trỏ tới. Ví dụ:
int *p;
p + 5
: sẽ trả về một con trỏ kiểuint*
, trỏ tới địa chỉ cách địa chỉ hiện tại củap
một khoảng là5 * sizeof(int)
bytes.
Do đó, kết quả của phép cộng một con trỏ với một số nguyên là một con trỏ có cùng kiểu.
Trong C/C++, phép toán *
(toán tử giải tham chiếu) được sử dụng để truy cập giá trị của đối tượng mà con trỏ đang trỏ tới. Nó trả về giá trị được lưu trữ tại địa chỉ mà con trỏ giữ.
&
(toán tử địa chỉ) được sử dụng để lấy địa chỉ của một biến.!
(toán tử NOT logic) được sử dụng để đảo ngược giá trị logic của một biểu thức.
Do đó, phương án C ("Cả hai phương án trên đều đúng") là đáp án chính xác nhất.
Kích thước vùng nhớ cấp phát cho một biến được quyết định bởi kiểu dữ liệu của biến đó. Mỗi kiểu dữ liệu (như int
, float
, char
, v.v.) chiếm một lượng bộ nhớ khác nhau. Ví dụ, kiểu int
thường chiếm 4 bytes, trong khi kiểu char
thường chiếm 1 byte. Tên biến chỉ là định danh để truy cập vùng nhớ, giá trị của biến chỉ là nội dung được lưu trữ trong vùng nhớ đó, cả hai đều không ảnh hưởng đến kích thước vùng nhớ được cấp phát.

Bộ Đồ Án Tốt Nghiệp Ngành Trí Tuệ Nhân Tạo Và Học Máy

Bộ 120+ Đồ Án Tốt Nghiệp Ngành Hệ Thống Thông Tin

Bộ Đồ Án Tốt Nghiệp Ngành Mạng Máy Tính Và Truyền Thông

Bộ Luận Văn Tốt Nghiệp Ngành Kiểm Toán

Bộ 370+ Luận Văn Tốt Nghiệp Ngành Kế Toán Doanh Nghiệp

Bộ Luận Văn Tốt Nghiệp Ngành Quản Trị Thương Hiệu
ĐĂ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.