JavaScript is required

Phát biểu đúng nhất về mẫu lệnh (f là con trỏ tệp):while ((ch=fgetc(f))!=EOF) …

A.

Chọn 1 phần tử và kiểm tra xem có phải là EOF hay không.

B.

Đọc các phần tử của tệp chừng nào kí tự đó chưa phải là kí tự xuống dòng.

C.

Ghi một phần tử và kiểm tra xem có phải là EOF hay không.

D.
Đọc các phần tử của tệp chừng nào kí tự đó chưa phải là kí tự kết thúc.
Trả lời:

Đáp án đúng: D


Đoạn mã `while ((ch = fgetc(f)) != EOF) ...` thực hiện việc đọc từng ký tự từ tệp được trỏ bởi con trỏ `f` sử dụng hàm `fgetc()`. Hàm `fgetc()` trả về ký tự đọc được (được gán cho biến `ch`) hoặc `EOF` (End Of File) nếu đạt đến cuối tệp. Vòng lặp `while` tiếp tục chừng nào ký tự đọc được khác `EOF`. * **A. Chọn 1 phần tử và kiểm tra xem có phải là EOF hay không.** - Mô tả này không chính xác vì vòng lặp đọc *từng* phần tử cho đến khi gặp EOF. * **B. Đọc các phần tử của tệp chừng nào kí tự đó chưa phải là kí tự xuống dòng.** - Mô tả này không chính xác vì vòng lặp dừng khi gặp EOF, không phải ký tự xuống dòng. * **C. Ghi một phần tử và kiểm tra xem có phải là EOF hay không.** - Mô tả này không chính xác vì `fgetc()` dùng để *đọc* chứ không phải *ghi*. * **D. Đọc các phần tử của tệp chừng nào kí tự đó chưa phải là kí tự kết thúc.** - "Kí tự kết thúc" ở đây ám chỉ EOF (End-Of-File). Mô tả này đúng, tuy nhiên đáp án D diễn đạt rõ ràng hơn. Do đó, đáp án chính xác nhất là D.

Câu hỏi liên quan