Trả lời:
Đáp án đúng: B
Đoạn chương trình `int p = 4; p = 10 + ++p;` thực hiện các bước sau:
1. **`int p = 4;`**: Khai báo biến `p` kiểu số nguyên và khởi tạo giá trị ban đầu là 4.
2. **`p = 10 + ++p;`**: Đây là biểu thức gán giá trị mới cho `p`.
* `++p` là toán tử tăng trước (pre-increment). Toán tử này sẽ tăng giá trị của `p` lên 1 *trước* khi giá trị của `p` được sử dụng trong biểu thức. Vì vậy, `p` sẽ trở thành 5.
* Sau đó, biểu thức `10 + p` sẽ được tính toán, tức là `10 + 5 = 15`.
* Cuối cùng, giá trị 15 sẽ được gán cho `p`.
Vậy, kết quả cuối cùng của đoạn chương trình là `p = 15`.
Do đó, đáp án đúng là B. 15.