C語言結構體陣列


在C語言程式設計中可以將一系列結構體來儲存不同資料型別的許多資訊。 結構體陣列也稱為結構的集合。
我們來看一個陣列結構體的例子,儲存5位學生的資訊並列印出來。建立一個原始檔:structure-with-array.c,其程式碼實現如下 -

#include<stdio.h>  
#include<conio.h>  
#include<string.h>  
struct student {
    int rollno;
    char name[10];
};
// 定義可儲存的最大學生數量
#define MAX 3

void main() {
    int i;
    struct student st[MAX];
    printf("Enter Records of 3 students");

    for (i = 0;i < MAX;i++) {
        printf("\nEnter Rollno:");
        scanf("%d", &st[i].rollno);
        printf("Enter Name:");
        scanf("%s", &st[i].name);
    }

    printf("Student Information List:\n");
    for (i = 0;i<MAX;i++) {
        printf("Rollno:%d, Name:%s\n", st[i].rollno, st[i].name);
    }

}

註:上面程式碼在工程: structure 下找到。

執行上面範例程式碼,得到以下結果 -

Enter Records of 3 students
Enter Rollno:1001
Enter Name:李明

Enter Rollno:1002
Enter Name:張會

Enter Rollno:1003
Enter Name:劉建明
Student Information List:
Rollno:1001, Name:李明
Rollno:1002, Name:張會
Rollno:1003, Name:劉建明