JavaScript is required

Để tạo danh sách liên kết, theo bạn sinh viên nào dưới đây là khai báo đúng cấu trúc tự trỏ sẽ được dùng: 1. Sinh viên 1: struct SV { char ht[25] int tuoi; struct Sv * tiep; }; 2. Sinh viên 2 typedef struct SV node; struct SV { char ht[25] int tuoi; node * tiep; }; 3. Sinh viên 3 typedef struct SV { char ht[25] int tuoi; struct SV * tiep; } node;

A.

1

B.

2

C.

2, 3

D.

1,2 và 3

Trả lời:

Đáp án đúng: D


Để tạo danh sách liên kết, mỗi nút (node) trong danh sách cần có một con trỏ để trỏ đến nút tiếp theo. Con trỏ này phải có kiểu dữ liệu là kiểu của chính nút đó. * **Sinh viên 1:** Khai báo `struct SV` với một con trỏ `tiep` có kiểu `struct SV *`. Đây là cách khai báo đúng. * **Sinh viên 2:** Sử dụng `typedef struct SV node;` để tạo bí danh `node` cho `struct SV`. Sau đó, khai báo con trỏ `tiep` có kiểu `node *`. Cách này cũng đúng, vì `node` và `struct SV` là tương đương. * **Sinh viên 3:** Sử dụng `typedef struct SV { ... } node;` để đồng thời định nghĩa cấu trúc `struct SV` và tạo bí danh `node` cho nó. Con trỏ `tiep` có kiểu `struct SV *`, đây cũng là cách khai báo đúng. Vì cả ba sinh viên đều khai báo đúng, đáp án đúng là D.

Câu hỏi liên quan