Đầu ra là gì? #include
Trả lời:
Đáp án đúng: B
Đầu tiên, biến i được khởi tạo là 15.
Vòng lặp while có điều kiện là func(&i) && i++ > 0.
Hàm func(&i) sẽ trừ 5 vào giá trị của i (thông qua con trỏ) và trả về giá trị mới của i.
Lần lặp 1: i = 15
- func(&i) trả về 10 (i = 10).
- Điều kiện: 10 && 10++ > 0 (10 > 0 là đúng). i trở thành 11.
Lần lặp 2: i = 11
- func(&i) trả về 6 (i = 6).
- Điều kiện: 6 && 6++ > 0 (6 > 0 là đúng). i trở thành 7.
Lần lặp 3: i = 7
- func(&i) trả về 2 (i = 2).
- Điều kiện: 2 && 2++ > 0 (2 > 0 là đúng). i trở thành 3.
Lần lặp 4: i = 3
- func(&i) trả về -2 (i = -2).
- Điều kiện: -2 && -2++ > 0 (-2 > 0 là sai). i trở thành -1.
Vòng lặp dừng lại khi điều kiện sai. Sau vòng lặp, printf("%d", i) được gọi để in giá trị của i.
Vậy, i = -1 sẽ được in ra màn hình.





