C语言结构体完成多个学生信息的输入输出
时间: 2024-09-04 17:03:21 浏览: 117
在 C 语言中,你可以创建一个结构体(struct)来存储多个学生的信息,如姓名、学号和成绩等。首先,定义一个名为 "Student" 的结构体,然后可以编写函数来进行输入和输出操作。
下面是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
// 定义结构体
typedef struct {
char name[50];
int student_id;
float grade;
} Student;
// 添加学生的函数
void add_student(Student* students, int num_students) {
for (int i = 0; i < num_students; i++) {
printf("请输入第 %d 个学生的姓名:", i + 1);
fgets(students[i].name, sizeof(students[i].name), stdin); // 注意这里要移除末尾的换行符
printf("请输入学号:");
scanf("%d", &students[i].student_id);
printf("请输入成绩:");
scanf("%f", &students[i].grade);
}
}
// 输出学生信息的函数
void display_students(const Student* students, int num_students) {
for (int i = 0; i < num_students; i++) {
printf("学生 %s 的学号是 %d,成绩是 %.2f\n", students[i].name, students[i].student_id, students[i].grade);
}
}
int main() {
Student students[10]; // 假设最多有10个学生
int num_students;
printf("请输入学生总数:");
scanf("%d", &num_students);
add_student(students, num_students);
display_students(students, num_students);
return 0;
}
```
这个程序会提示用户输入学生的数量和详细信息,并将数据保存在结构体数组中,最后显示所有学生的记录。
阅读全文