可以通過循環遍歷的方式為結構體數組賦值。假設有如下定義的結構體數組:
#define SIZE 3
struct Student {
char name[20];
int age;
double score;
};
struct Student students[SIZE];
可以使用循環遍歷的方式為結構體數組賦值,示例代碼如下:
#include <stdio.h>
int main() {
for (int i = 0; i < SIZE; i++) {
printf("請輸入第%d個學生的姓名、年齡和成績:", i+1);
scanf("%s%d%lf", students[i].name, &students[i].age, &students[i].score);
}
// 打印結構體數組中的數據
for (int i = 0; i < SIZE; i++) {
printf("第%d個學生的姓名:%s,年齡:%d,成績:%.2lf\n", i+1, students[i].name, students[i].age, students[i].score);
}
return 0;
}
在上述示例代碼中,通過循環遍歷結構體數組,使用scanf函數為每個結構體的成員變量賦值。然后再通過循環遍歷結構體數組,使用printf函數打印結構體數組中的數據。