Hãy khai báo một cấu trúc mô tả sinh viên, thông tin về mỗi sinh viên bao gồm: tên, điểm 3 môn học. Khai báo nào sau đây là đúng:
Trả lời:
Đáp án đúng: C
Để khai báo một cấu trúc (struct) trong C/C++, ta cần sử dụng từ khóa struct. Nếu muốn sử dụng typedef để tạo một tên ngắn gọn hơn cho cấu trúc, ta khai báo typedef struct. Tên của cấu trúc (trong trường hợp này là STUDENT) thường được viết hoa theo quy ước, tuy nhiên điều này không bắt buộc.
Trong các đáp án:
- Đáp án A sai vì sử dụng từ khóa
structurethay vìstruct. - Đáp án B sai vì sử dụng kiểu dữ liệu
intcho điểm số (s1, s2, s3), điểm số thường là số thực (float). Ngoài ra, khai báochar Name[]không chỉ rõ kích thước mảng, có thể gây lỗi biên dịch hoặc hành vi không mong muốn. - Đáp án C đúng vì sử dụng
typedef structđể định nghĩa cấu trúc STUDENT với các trường dữ liệu phù hợp:Namelà mảng các ký tự (chuỗi) vàs1,s2,s3là các số thực (float) để lưu điểm. - Đáp án D sai vì sử dụng
typedef STUDENTkhông hợp lệ. Cần phải cóstructsautypedefđể chỉ ra rằng ta đang định nghĩa một kiểu dữ liệu cấu trúc. Thêm vào đó, kiểu dữ liệu điểm làintcũng không phù hợp.
Vậy đáp án đúng là C.





