JavaScript is required

Biểu thức nào sau đây là hợp lệ:

A.

(1) int x = 6; x = !x;

B.

(2) int x = 6; if (!(x>3)){}

C.

(3) int x = 6; x = ~x;

D.
Câu (2) và (3) đúng
Trả lời:

Đáp án đúng: D


Trong C/C++, các biểu thức được đánh giá để xác định tính hợp lệ dựa trên kiểu dữ liệu và các toán tử được sử dụng. * **A. (1) `int x = 6; x = !x;`**: Toán tử `!` là toán tử NOT logic. Khi `x = 6`, `!x` sẽ trả về `0` (false) vì `x` khác 0. Do đó, `x` sẽ được gán giá trị `0`. Biểu thức này hợp lệ. * **B. (2) `int x = 6; if (!(x>3)){}`**: `x > 3` trả về `true` (1). `!(x > 3)` sẽ trả về `false` (0). Biểu thức này hợp lệ vì nó sử dụng toán tử so sánh và toán tử NOT logic một cách chính xác trong điều kiện `if`. * **C. (3) `int x = 6; x = ~x;`**: Toán tử `~` là toán tử NOT bitwise. Nó đảo ngược tất cả các bit của `x`. Nếu `x = 6` (trong hệ nhị phân là `00000110` nếu `int` là 8 bit), `~x` sẽ là `11111001` (tức là -7 nếu `int` là số bù hai). Biểu thức này hợp lệ. Vì cả (2) và (3) đều đúng, đáp án D là đáp án chính xác nhất.

Câu hỏi liên quan