What is the result of the following code? void main() { int x = 0; switch(x) { case 1: printf( "One" ); case 0: printf( "Zero" ); case 2: printf( "Hello World" ); } }
Trả lời:
Đáp án đúng: A
Đoạn code sử dụng câu lệnh `switch` để kiểm tra giá trị của biến `x`. Biến `x` được khởi tạo với giá trị là 0.
Khi `switch(x)` được thực thi, chương trình sẽ tìm kiếm `case` nào có giá trị tương ứng với giá trị của `x`. Trong trường hợp này, `case 0:` sẽ được thực thi. Tuy nhiên, điểm quan trọng là trong C (và C++), nếu không có lệnh `break` ở cuối mỗi `case`, chương trình sẽ tiếp tục thực thi các `case` tiếp theo cho đến khi gặp lệnh `break` hoặc kết thúc khối `switch`.
Trong đoạn code này, sau khi `case 0:` được thực thi, `printf("Zero")` sẽ in ra "Zero". Vì không có lệnh `break`, chương trình sẽ tiếp tục thực thi `case 2:`, và `printf("Hello World")` sẽ in ra "Hello World".
Vì vậy, kết quả cuối cùng sẽ là "ZeroHello World".





