Cho biết kết quả trên màn hình khi chạy đoạn code sau:

int a = 34;
cout << ((a >> 5) & 3) << endl;

Đáp án lựa chọn:

  • A. 3

  • B. 2

  • C. 0

  • D. 1

Giải thích:

  • a = 34 → dạng nhị phân: 0010 0010

  • a >> 5 (dịch phải 5 bit) → 0000 0001 → giá trị 1

  • 1 & 3:

    • 1 trong nhị phân: 0000 0001

    • 3 trong nhị phân: 0000 0011

    • Kết quả AND: 0000 0001 → bằng 1

Vậy đáp án đúng là: D. 1

Để lại một bình luận