JavaScript is required

Kết quả của đoạn chương trình sau là gì, nếu gõ vào : ”10 T”.
char c;
int n;
scanf(“ % d % c”, & n, & c);

A.
n=10, c=’ ‘
B.
Lỗi khi xây dựng chương trình
C.
n=10, c=’T’
D.
Kết quả khác
Trả lời:

Đáp án đúng: A


Đoạn chương trình sử dụng hàm `scanf` để đọc dữ liệu từ đầu vào chuẩn. Cụ thể, nó cố gắng đọc một số nguyên (`%d`) vào biến `n` và một ký tự (`%c`) vào biến `c`. Định dạng chuỗi `" %d %c"` có một khoảng trắng trước `%d`. Khoảng trắng này có nghĩa là `scanf` sẽ bỏ qua bất kỳ khoảng trắng nào (ví dụ: dấu cách, tab, dòng mới) ở đầu vào cho đến khi nó tìm thấy một ký tự không phải khoảng trắng để chuyển đổi thành một số nguyên. Sau khi đọc số nguyên, `scanf` sẽ đọc ký tự tiếp theo vào biến `c`. Trong trường hợp đầu vào là "10 T", `scanf` sẽ đọc số 10 vào `n`. Sau đó, nó sẽ đọc ký tự 'T' vào `c`. Vậy, `n` sẽ có giá trị 10 và `c` sẽ có giá trị 'T'.

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