JavaScript is required

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

int number[5] = { 10, 20, 30, 40, 50 };

int *p;

p = number;

p++;

*p += 60;

cout << number[1] << endl;

A.

10

B.

20

C.

50

D.

80

Trả lời:

Đáp án đúng: D


Đoạn code khai báo một mảng `number` gồm 5 số nguyên và khởi tạo giá trị cho chúng. Sau đó, một con trỏ `p` kiểu `int` được khai báo và gán địa chỉ của phần tử đầu tiên trong mảng `number`. Câu lệnh `p++` tăng con trỏ `p` lên một vị trí, khiến nó trỏ đến phần tử thứ hai của mảng (tức là `number[1]`). Cuối cùng, `*p += 60;` cộng giá trị 60 vào giá trị mà con trỏ `p` đang trỏ tới, tức là `number[1]`. Ban đầu `number[1]` có giá trị là 20, sau khi cộng thêm 60, giá trị của nó trở thành 80. Do đó, khi `cout << number[1] << endl;` được thực thi, nó sẽ in ra giá trị 80.

Câu hỏi liên quan