JavaScript is required

Kết quả của chương trình sau là gì: #include void main() { int x, * p; x = 6; p = & x; printf(“ % d”, x); printf(“ % d”, * p); };

A.

69

B.

66

C.

Lỗi khi xây dựng chương trình

D.

Kết quả khác

Trả lời:

Đáp án đúng: B


Chương trình C này thực hiện các bước sau: 1. **Khai báo biến:** `int x, *p;` Khai báo một biến số nguyên `x` và một con trỏ `p` trỏ đến một biến số nguyên. 2. **Gán giá trị:** `x = 6;` Gán giá trị 6 cho biến `x`. 3. **Gán địa chỉ:** `p = &x;` Gán địa chỉ của biến `x` cho con trỏ `p`. Bây giờ `p` trỏ đến `x`. 4. **In giá trị của x:** `printf("%d", x);` In giá trị của `x`, là 6. 5. **In giá trị mà p trỏ tới:** `printf("%d", *p);` `*p` là toán tử giải tham chiếu (dereference operator). Nó truy cập giá trị mà con trỏ `p` đang trỏ tới. Vì `p` trỏ đến `x`, nên `*p` tương đương với `x`, và giá trị được in ra là 6. Vậy, chương trình sẽ in ra "66".

Câu hỏi liên quan