用结构体输入学生信息存入信息库
时间: 2024-02-28 17:04:23 浏览: 23
好的,下面是用结构体输入学生信息并存入信息库的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_STUDENT_NUM 100
struct Student {
char name[20];
int age;
float score;
};
int main() {
struct Student students[MAX_STUDENT_NUM];
int student_num = 0;
// 输入学生信息
while (student_num < MAX_STUDENT_NUM) {
struct Student student;
printf("请输入第%d个学生的信息(name, age, score): ", student_num + 1);
scanf("%s %d %f", student.name, &student.age, &student.score);
students[student_num] = student;
student_num++;
char c;
printf("是否继续输入?(y/n)");
scanf(" %c", &c);
if (c != 'y' && c != 'Y') {
break;
}
}
// 输出学生信息
printf("学生信息:\n");
for (int i = 0; i < student_num; i++) {
printf("name=%s, age=%d, score=%.2f\n", students[i].name, students[i].age, students[i].score);
}
return 0;
}
```
在这个示例代码中,我们定义了一个结构体 `Student`,包含了学生的姓名、年龄和成绩。然后定义了一个数组 `students` 来保存多个学生的信息,最多支持存储 `MAX_STUDENT_NUM` 个学生的信息。在主函数中,我们通过一个循环来输入学生信息,并将其存入 `students` 数组中。在输入过程中,我们通过一个变量 `student_num` 来记录已经输入的学生数量,并在达到最大数量时退出输入循环。最后,我们通过另一个循环来输出所有学生的信息。
需要注意的是,这个示例代码中没有输入学生的id信息。如果需要记录学生的id,可以将 `Student` 结构体中加入一个 `int` 类型的 `id` 成员,并在输入时要求用户输入。另外,如果需要记录更多的信息,可以根据需要在 `Student` 结构体中加入其他成员。
这样就完成了用结构体输入学生信息并存入信息库的操作。