JavaScript is required

Cho đoạn chương trình sau. 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à:
#include
void main() {
char c;
int n;
scanf(“ % d % c”, & n, & c);
printf(“ % 3 d % c”, n, c);
};

A.
“ 29b”
B.
“ 29h b”
C.
“ 29h”
D.
Kết quả khác
Trả lời:

Đáp án đúng: C


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

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