Mảng cấu trúc trong lập trình C là một tập hợp các biến kiểu dữ liệu khác nhau, được nhóm lại với nhau dưới một tên duy nhất.
Dạng khai báo cấu trúc chung
Khai báo cấu trúc như sau -
struct tagname{ datatype member1; datatype member2; datatype member n; };
Đây, struct là từ khóa.
tên thẻ chỉ định tên của cấu trúc.
thành viên1, thành viên2 chỉ định các mục dữ liệu tạo nên cấu trúc.
Ví dụ
Ví dụ sau đây cho thấy cách sử dụng mảng trong một cấu trúc trong lập trình C -
struct book{ int pages; char author [30]; float price; };
Ví dụ
Sau đây là chương trình C để chứng minh việc sử dụng một mảng trong một cấu trúc -
#include <stdio.h> // Declaration of the structure candidate struct candidate { int roll_no; char grade; // Array within the structure float marks[4]; }; // Function to displays the content of // the structure variables void display(struct candidate a1){ printf("Roll number : %d\n", a1.roll_no); printf("Grade : %c\n", a1.grade); printf("Marks secured:\n"); int i; int len = sizeof(a1.marks) / sizeof(float); // Accessing the contents of the // array within the structure for (i = 0; i < len; i++) { printf("Subject %d : %.2f\n", i + 1, a1.marks[i]); } } // Driver Code int main(){ // Initialize a structure struct candidate A= { 1, 'A', { 98.5, 77, 89, 78.5 } }; // Function to display structure display(A); return 0; }
Đầu ra
Khi chương trình trên được thực thi, nó tạo ra kết quả sau -
Roll number : 1 Grade : A Marks secured: Subject 1 : 98.50 Subject 2 : 77.00 Subject 3 : 89.00 Subject 4 : 78.50