用c语言生成一段插入结构体数组(数组包含学生成绩以及姓名)到线性表中的代码
时间: 2024-04-29 21:24:04 浏览: 83
以下是一个示例代码,其中定义了一个名为 `Student` 的结构体,包含姓名和成绩两个成员变量。在 `main` 函数中,首先定义了一个长度为 5 的结构体数组 `students`,并对每个元素进行初始化。然后创建一个线性表 `list`,并通过循环将数组中的每个元素插入到线性表中。最后遍历线性表,输出每个学生的姓名和成绩。
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// 学生结构体
struct Student {
char name[20];
int score;
};
int main() {
// 初始化学生数组
struct Student students[5] = {
{"Alice", 90},
{"Bob", 80},
{"Charlie", 70},
{"David", 60},
{"Emily", 50}
};
// 创建线性表
struct Node {
struct Student student;
struct Node* next;
};
struct Node* list = NULL;
// 将学生数组插入到线性表中
for (int i = 0; i < 5; i++) {
struct Node* node = (struct Node*) malloc(sizeof(struct Node));
node->student = students[i];
node->next = list;
list = node;
}
// 遍历线性表,输出每个学生的姓名和成绩
printf("Student List:\n");
struct Node* p = list;
while (p != NULL) {
printf("%s: %d\n", p->student.name, p->student.score);
p = p->next;
}
return 0;
}
```
阅读全文