Phát biểu đúng nhất về mẫu lệnh( f là con trỏ tệp): while ((ch = fgetc(f)) != EOF)…
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` bằng hàm `fgetc()`. Hàm `fgetc()` trả về ký tự đọc được dưới dạng một số nguyên (int), hoặc trả về `EOF` (End Of File) nếu gặp lỗi hoặc đạt đến cuối tệp.
Vòng lặp `while` tiếp tục thực hiện cho đến khi ký tự đọc được (`ch`) bằng `EOF`. Như vậy, vòng lặp đọc các phần tử (ký tự) của tệp chừng nào ký tự đó chưa phải là ký tự kết thúc tệp.
Phương án A không chính xác vì nó chỉ nói đến việc chọn một phần tử và kiểm tra, mà không nói rõ hành động đọc từ tệp. Phương án B không chính xác vì nó so sánh với ký tự xuống dòng, không phải điều kiện dừng của vòng lặp. Phương án C không chính xác vì nó nói về việc ghi một phần tử, trong khi đoạn mã thực hiện việc đọc.
Do đó, phương án D là phát biểu đúng nhất.





