Hàm scanf(“%[^\n]”,str); tương với lệnh nào sau đây
Trả lời:
Đáp án đúng: D
Hàm `scanf("%[^\n]", str);` đọc một chuỗi ký tự từ đầu vào chuẩn cho đến khi gặp ký tự newline (`\n`). Điều này tương đương với hàm `gets(str);` vốn cũng đọc một dòng từ đầu vào chuẩn. Tuy nhiên, cần lưu ý rằng hàm `gets()` không an toàn vì nó không kiểm tra kích thước của bộ đệm, dẫn đến nguy cơ tràn bộ đệm. Trong khi đó, `%[^\n]` trong `scanf` có thể được sử dụng với chỉ định kích thước để tránh tràn bộ đệm, ví dụ: `scanf("%99[^\n]", str);` sẽ chỉ đọc tối đa 99 ký tự vào `str`.
* **A. getch();**: Hàm này đọc một ký tự từ bàn phím mà không hiển thị ký tự đó trên màn hình.
* **B. getche();**: Hàm này đọc một ký tự từ bàn phím và hiển thị ký tự đó trên màn hình.
* **C. macro getchar();**: Macro này đọc một ký tự từ đầu vào chuẩn (thường là bàn phím).
* **D. gets(str);**: Hàm này đọc một dòng từ đầu vào chuẩn và lưu vào chuỗi `str`.
Tổng hợp 600+ câu hỏi trắc nghiệm lập trình C có đáp án đầy đủ nhằm giúp các bạn dễ dàng ôn tập lại toàn bộ các kiến thức.
50 câu hỏi 60 phút
Câu hỏi liên quan

FORM.08: Bộ 130+ Biểu Mẫu Thống Kê Trong Doanh Nghiệp

FORM.07: Bộ 125+ Biểu Mẫu Báo Cáo Trong Doanh Nghiệp

FORM.06: Bộ 320+ Biểu Mẫu Hành Chính Thông Dụng

FORM.05: Bộ 330+ Biểu Mẫu Thuế - Kê Khai Thuế Mới Nhất

FORM.04: Bộ 240+ Biểu Mẫu Chứng Từ Kế Toán Thông Dụng
