JavaScript is required

Chương trình:

#include

void main() {

char c;

int n;

scanf("%d%c", &n, &c);

printf("%3d%c", n, c);

}

Giả sử khi chạy chương trình ta gõ từ bàn phím: “29h b”. Kết quả in ra n và c tương ứng sẽ là:

A.

“ 29b”

B.

“ 29h b”

C.

“ 29h”

D.
Kết quả khác
Trả lời:

Đáp án đúng: C


Chương trình sử dụng `scanf` để đọc một số nguyên và một ký tự từ đầu vào. Định dạng `%d` trong `scanf` sẽ đọc một chuỗi các chữ số liên tiếp và chuyển đổi nó thành một số nguyên. Khi gặp ký tự 'h' không phải là số, `scanf` sẽ dừng đọc số nguyên và gán giá trị số nguyên đọc được (29) cho biến `n`. Định dạng `%c` sẽ đọc ký tự tiếp theo trong luồng đầu vào (là 'h') và gán nó cho biến `c`. Sau đó, chương trình sử dụng `printf` để in giá trị của `n` (với độ rộng tối thiểu là 3) và ký tự `c`. Vì vậy, `n` sẽ là 29 và `c` sẽ là 'h'. Kết quả in ra sẽ là " 29h".

Câu hỏi liên quan