Đầu ra của chương trình là gì? #include #include void main() { int i = 3; i = i++; printf("%d", i); getch(); }
Trả lời:
Đáp án đúng: A
Đoạn code C/C++ này sử dụng toán tử tăng (++) hậu tố, điều này có nghĩa là giá trị của biến i được sử dụng trước khi nó được tăng lên. Tuy nhiên, trong biểu thức `i = i++;`, giá trị ban đầu của i được gán lại cho i sau khi biểu thức `i++` được tính toán. Do đó, giá trị của i không thay đổi sau dòng lệnh này. Vì vậy, i vẫn giữ giá trị 3.
Giải thích chi tiết:
1. `int i = 3;` Khởi tạo biến i với giá trị 3.
2. `i = i++;`
* `i++`: Giá trị của i (là 3) được sử dụng trong biểu thức.
* Sau đó, i tăng lên thành 4.
* Tuy nhiên, giá trị ban đầu của i (là 3) lại được gán lại cho i.
3. `printf("%d", i);` In giá trị của i, là 3.
Kết luận: Đầu ra của chương trình là 3.