JavaScript is required

Chọn kết quả đúng cho chương trình sau:
#include
#include
void main() {
struct S1 {
float d;
float d1;
float d2;
};
struct S1 m = {
12,
1
};
printf(“ % 0.1 f % 0.1 f % 0.1 f”, m.d, m.d1, m.d2);
};

A.
A. “12.01.00.0”
B.
B. “12.0000001.0000000.000000”
C.
C. Kết quả khác
D.
D. Chương trình bị lỗi
Trả lời:

Đáp án đúng: A


Chương trình khai báo một struct `S1` chứa ba biến kiểu `float`: `d`, `d1`, và `d2`. Trong hàm `main`, một biến `m` kiểu `S1` được khởi tạo. Khi khởi tạo, chỉ có hai thành viên đầu tiên là `m.d` và `m.d1` được gán giá trị lần lượt là `12` và `1`. Thành viên `m.d2` không được khởi tạo tường minh, do đó nó sẽ nhận giá trị mặc định là `0.0`. Sau đó, chương trình in ra giá trị của ba thành viên này, định dạng mỗi giá trị với một chữ số thập phân. Vì vậy, kết quả sẽ là "12.0 1.0 0.0".

Câu hỏi liên quan