Chương trình sẽ in ra “laptrinhc++” bao nhiêu lần? #include
Trả lời:
Đáp án đúng: C
Chương trình này định nghĩa hàm `main` và trong hàm `main` lại gọi chính nó. Đây là một ví dụ về đệ quy. Tuy nhiên, trong trường hợp này, không có điều kiện dừng cho đệ quy. Do đó, hàm `main` sẽ liên tục được gọi, in ra "laptrinhc++" mỗi lần gọi. Quá trình này sẽ tiếp diễn cho đến khi bộ nhớ ngăn xếp (stack) bị tràn, dẫn đến lỗi chương trình.
* **Phương án A:** "Thời gian vô hạn" không chính xác vì chương trình sẽ kết thúc khi gặp lỗi tràn bộ nhớ ngăn xếp.
* **Phương án B:** "65535 lần" là một con số cụ thể và không đúng trong trường hợp này, số lần in phụ thuộc vào kích thước stack.
* **Phương án C:** "Ngăn xếp Till tràn" mô tả chính xác điều gì sẽ xảy ra.
* **Phương án D:** "Không thể gọi main() trong main()" là sai, vì C/C++ cho phép gọi hàm main() từ bên trong hàm main() (đệ quy).
Vì vậy, đáp án đúng nhất là C.