1)班上5个学生(学号,姓名,数学成绩),有若干同学成绩不及格,采用顺序表编程实现 下面的问题: 函数1:顺序表输入5个同学的数据 函数2:输出表中不及格同学的数据(成绩<60)。
时间: 2024-09-24 08:08:35 浏览: 36
为了实现这个功能,我们可以使用C语言中的结构体来表示学生的信息,并创建一个顺序表来存储他们。首先,我们需要定义一个学生结构体:
```c
typedef struct {
int id; // 学号
char name[20]; // 姓名
int score; // 数学成绩
} Student;
```
接下来,我们创建两个函数:一个用于输入数据,另一个用于查找并输出不及格的学生。
**函数1:顺序表输入5个同学的数据**
```c
void input_students(Student* students, int size) {
for (int i = 0; i < size; i++) {
printf("请输入第%d位学生的学号、姓名和数学成绩:\n", i + 1);
scanf("%d", &students[i].id);
scanf("%s", students[i].name);
scanf("%d", &students[i].score);
}
}
```
**函数2:输出不及格同学的数据**
```c
void print_failing_students(Student* students, int size) {
for (int i = 0; i < size; i++) {
if (students[i].score < 60) {
printf("学号:%d 姓名:%s 成绩:%d\n", students[i].id, students[i].name, students[i].score);
}
}
}
```
你可以这样使用这两个函数:
```c
int main() {
int student_count = 5; // 表示5个学生
Student students[student_count];
input_students(students, student_count); // 输入学生数据
print_failing_students(students, student_count); // 输出不及格学生信息
return 0;
}
```
阅读全文