Cho khai báo sau. Số lượng bít sử dụng trong biến cấu trúc trên là bao nhiêu: struct Date { unsigned int ngay: 5; unsigned int thang; unsigned int nam: 11; } sn1;
Đáp án đúng: C
Trong cấu trúc Date:
ngay
chiếm 5 bitsthang
chiếm 4 bytes (32 bits) vì không chỉ định số bit, và kiểuunsigned int
mặc định là 4 bytesnam
chiếm 11 bits
Tổng cộng là 5 + 32 + 11 = 48 bits.
Câu hỏi liên quan
* Phương án A: Chỉ nói đến việc có một trường là con trỏ chứa địa chỉ của một biến cấu trúc, nhưng không nói rõ biến cấu trúc đó phải có cùng kiểu dữ liệu.
* Phương án B: Mô tả chính xác cấu trúc tự trỏ. Cấu trúc có một trường là con trỏ, con trỏ này trỏ đến một biến cấu trúc có cùng kiểu dữ liệu.
* Phương án C: Nói rằng cấu trúc có một trường có kiểu dữ liệu giống nó, điều này không đúng vì trường đó phải là con trỏ.
* Phương án D: Vì A và C không hoàn toàn đúng, nên D sai.
Vậy, đáp án đúng nhất là B.
Trong đoạn chương trình C, union u
chứa hai thành viên: struct ng date
và struct diachi address
. Kích thước của union
sẽ bằng kích thước của thành viên lớn nhất trong nó.
- struct ng date
chứa ba trường unsigned ngay
, unsigned thang
, và unsigned nam
. Giả sử unsigned
chiếm 4 bytes, vậy kích thước của struct ng
là 4 * 3 = 12 bytes.
- struct diachi address
chứa một trường int sonha
và một mảng char tenpho[20]
. Giả sử int
chiếm 4 bytes và char
chiếm 1 byte, vậy kích thước của struct diachi
là 4 + 20 * 1 = 24 bytes.
Do đó, kích thước của union u
sẽ bằng kích thước của struct diachi
, tức là 24 bytes. Vì không có đáp án nào đúng nên ta chọn đáp án D.
1. `head`: Truy cập vào địa chỉ của phần tử đầu tiên trong danh sách móc nối mà `head` đang trỏ tới.
2. `head->next`: Truy cập vào con trỏ `next` của phần tử đầu tiên, con trỏ này trỏ tới phần tử thứ hai trong danh sách.
3. `head->next->next`: Truy cập vào con trỏ `next` của phần tử thứ hai, con trỏ này trỏ tới phần tử thứ ba trong danh sách.
4. `head->next->next->info`: Truy cập vào thành viên `info` của phần tử thứ ba.
5. `head->next->next->info = 111`: Gán giá trị 111 cho thành viên `info` của phần tử thứ ba.
Do đó, câu lệnh này sẽ thay đổi giá trị của trường `info` trong phần tử thứ ba của danh sách liên kết.
Trong đoạn mã C đã cho, chúng ta có một struct SV
chứa một mảng ký tự hoten
. Biến SV1
là một thể hiện của struct này, và p
là một con trỏ trỏ đến SV1
.
Để truy cập vào thành phần hoten
của SV1
, chúng ta có hai cách chính:
- Sử dụng toán tử chấm (
.
) trực tiếp trên biến struct:SV1.hoten
. - Sử dụng toán tử mũi tên (
->
) thông qua con trỏ:p->hoten
(vìp
trỏ đếnSV1
).
Phương án C, &hoten
, không đúng vì nó sẽ trả về địa chỉ của một biến hoten
(nếu biến này tồn tại trong phạm vi hiện tại), chứ không phải là truy cập vào thành phần hoten
của struct SV1
.
Do đó, cả A và B đều đúng.
* `outtext(char far * textstring);`: Hàm này hiển thị xâu `textstring` tại vị trí hiện tại của con trỏ đồ họa. Vị trí này có thể được thiết lập trước đó bằng các hàm khác. `char far *` chỉ định một con trỏ xa đến một chuỗi ký tự.
* `outtextxy(int x, int y, char far *textstring);`: Hàm này hiển thị xâu `textstring` tại vị trí có tọa độ `(x, y)` trên màn hình đồ họa. `x` và `y` là tọa độ kiểu số nguyên.
Trong khi đó:
* `printf()` là một hàm chuẩn trong C/C++ được sử dụng để in ra định dạng văn bản trên console (cửa sổ dòng lệnh), không phù hợp cho việc hiển thị trong chế độ đồ họa.
* `putchar()` là hàm dùng để in một ký tự ra console.
Vì `outtextxy` cho phép chỉ định vị trí cụ thể để hiển thị xâu, nó thường được sử dụng phổ biến hơn. Tuy nhiên, `outtext` cũng đúng nếu vị trí con trỏ đồ họa đã được thiết lập từ trước. Trong các lựa chọn đưa ra, `outtextxy` chính xác hơn vì nó tường minh về vị trí hiển thị. Tuy nhiên, outtext cũng là một lựa chọn đúng.
Trong trường hợp này, đáp án C chính xác hơn đáp án B. Tuy nhiên, vì câu hỏi không yêu cầu "chính xác nhất", cả B và C đều có thể coi là đáp án đúng. Tuy nhiên, theo như các đáp án được cung cấp, và theo cách sử dụng phổ biến, C là đáp án hợp lý nhất.

Bộ Đồ Án Tốt Nghiệp Ngành Trí Tuệ Nhân Tạo Và Học Máy

Bộ 120+ Đồ Án Tốt Nghiệp Ngành Hệ Thống Thông Tin

Bộ Đồ Án Tốt Nghiệp Ngành Mạng Máy Tính Và Truyền Thông

Bộ Luận Văn Tốt Nghiệp Ngành Kiểm Toán

Bộ 370+ Luận Văn Tốt Nghiệp Ngành Kế Toán Doanh Nghiệp

Bộ Luận Văn Tốt Nghiệp Ngành Quản Trị Thương Hiệu
ĐĂNG KÝ GÓI THI VIP
- Truy cập hơn 100K đề thi thử và chính thức các năm
- 2M câu hỏi theo các mức độ: Nhận biết – Thông hiểu – Vận dụng
- Học nhanh với 10K Flashcard Tiếng Anh theo bộ sách và chủ đề
- Đầy đủ: Mầm non – Phổ thông (K12) – Đại học – Người đi làm
- Tải toàn bộ tài liệu trên TaiLieu.VN
- Loại bỏ quảng cáo để tăng khả năng tập trung ôn luyện
- Tặng 15 ngày khi đăng ký gói 3 tháng, 30 ngày với gói 6 tháng và 60 ngày với gói 12 tháng.