JavaScript is required

Cho a=3, b=2 và c là 3 biến nguyên. Biểu thức nào sau viết sai cú pháp trong ngôn ngữ lập trình C

A.

(c=a & b)

B.

(c=a && b)

C.

(c= a/b)

D.

(c= a<

Trả lời:

Đáp án đúng: A


Trong ngôn ngữ lập trình C, các phép toán bitwise (AND, OR, XOR, NOT, dịch trái, dịch phải) được biểu diễn bằng các ký hiệu đơn (&, |, ^, ~, <<, >>). Các phép toán logic (AND logic, OR logic, NOT logic) được biểu diễn bằng các ký hiệu kép (&&, ||, !). * **A. (c = a & b)**: Phép toán bitwise AND giữa `a` và `b`, kết quả được gán cho `c`. * **B. (c = a && b)**: Phép toán logic AND giữa `a` và `b`, kết quả (1 hoặc 0) được gán cho `c`. Do `a` và `b` khác 0 nên biểu thức `a && b` sẽ cho kết quả là 1. * **C. (c = a / b)**: Phép chia số nguyên `a` cho `b`, kết quả được gán cho `c`. * **D. (c = a < b)**: So sánh `a` có nhỏ hơn `b` không. Kết quả là một giá trị boolean (1 nếu đúng, 0 nếu sai) được gán cho `c`. Ở đây, `a=3` không nhỏ hơn `b=2` nên kết quả là 0. Biểu thức này bị sai cú pháp vì có ký tự "<" không hợp lệ ở giữa. Vậy, phương án D viết sai cú pháp.

Câu hỏi liên quan