c语言已知有n个学生,每个学生信息包含学号、姓名、性别、3门课程成绩,现在请你设计函数,当输入某个学号时,存在该学生则输出学生的全部信息,若不存在,则输出Not Found。
时间: 2023-12-16 21:15:33 浏览: 171
好的,这是一个比较常见的操作,我可以给您提供一个简单的实现思路。
1. 定义一个包含学号、姓名、性别、三门课程成绩的结构体,例如:
```c
struct Student {
char id[11];
char name[21];
char gender;
float score1;
float score2;
float score3;
};
```
2. 定义一个存储学生信息的数组,例如:
```c
Student students[n];
```
其中,n为学生总人数。
3. 编写查找函数,根据输入的学号查找学生信息,例如:
```c
void search(char id[]) {
for (int i = 0; i < n; i++) {
if (strcmp(students[i].id, id) == 0) {
printf("学号:%s\n", students[i].id);
printf("姓名:%s\n", students[i].name);
printf("性别:%c\n", students[i].gender);
printf("成绩1:%f\n", students[i].score1);
printf("成绩2:%f\n", students[i].score2);
printf("成绩3:%f\n", students[i].score3);
return;
}
}
printf("Not Found\n");
}
```
该函数遍历存储学生信息的数组,查找与输入学号相同的学生信息,若找到则输出全部信息,否则输出"Not Found"。
4. 调用查找函数,例如:
```c
search("1001");
```
以上是一个简单的实现思路,您可以根据具体需求进行修改和优化。注意在使用字符串比较函数时,要使用`strcmp()`函数而不是`==`运算符进行比较。
阅读全文