JavaScript is required

What is output? #include #include #define MAX 1000 void main() { int MAX = 100; printf("%d ", MAX); getch(); }

A.

1000

B.

100

C.

Complier error

Trả lời:

Đáp án đúng: C


Trong đoạn mã C, `#define MAX 1000` định nghĩa một hằng số tiền xử lý tên là `MAX` với giá trị là 1000. Sau đó, trong hàm `main`, một biến cục bộ cũng có tên là `MAX` được khai báo và gán giá trị là 100. Khi sử dụng `printf("%d ", MAX);`, chương trình sẽ in ra giá trị của biến `MAX` gần nhất trong phạm vi hiện tại. Vì biến `MAX` được khai báo trong hàm `main` sẽ che khuất (shadow) hằng số `MAX` đã được định nghĩa bằng `#define`, nên giá trị in ra sẽ là giá trị của biến cục bộ `MAX`, tức là 100. Do đó, đáp án đúng là 100.

Câu hỏi liên quan