What is output? void main() { int a = 15, b = 10, c = 5; if(a > b > c) printf("True"); else printf("False"); getch(); }
Trả lời:
Đáp án đúng: B
Đoạn code này có một lỗi logic trong biểu thức điều kiện `if(a > b > c)`. Trong C, biểu thức này được đánh giá từ trái sang phải.
1. `a > b` (15 > 10) trả về 1 (true).
2. Sau đó, `1 > c` (1 > 5) được đánh giá, trả về 0 (false).
Do đó, điều kiện `if` trở thành `if (false)`, và phần `else` được thực thi, in ra "False".