用c语言编写(1)显示学生信息(2)查找学生成绩
以下是一个用C语言编写的简单程序,其中实现了显示学生信息和查找学生成绩的功能。为了简化示例,我们将学生信息限制为姓名、学号和单一成绩。
```c
#include <stdio.h>
#include <string.h>
// 学生信息结构体
typedef struct {
char name[50];
int student_id;
float score;
} Student;
// 函数声明
void display_student(Student s);
int find_student(Student students[], int size, int student_id);
int main() {
// 假设有一个学生数组
Student students[] = {
{"张三", 1001, 85.5},
{"李四", 1002, 92.0},
{"王五", 1003, 76.5},
// 可以添加更多学生信息
};
int total_students = sizeof(students) / sizeof(students[0]);
// 显示所有学生信息
printf("所有学生信息:\n");
for (int i = 0; i < total_students; i++) {
display_student(students[i]);
}
// 查找学生成绩
int student_id;
printf("请输入要查找的学号: ");
scanf("%d", &student_id);
int index = find_student(students, total_students, student_id);
if (index != -1) {
printf("找到学生成绩:\n");
display_student(students[index]);
} else {
printf("没有找到学号为 %d 的学生。\n", student_id);
}
return 0;
}
// 显示学生信息的函数
void display_student(Student s) {
printf("姓名:%s,学号:%d,成绩:%.2f\n", s.name, s.student_id, s.score);
}
// 查找学生成绩的函数,如果找到返回数组下标,否则返回-1
int find_student(Student students[], int size, int student_id) {
for (int i = 0; i < size; i++) {
if (students[i].student_id == student_id) {
return i;
}
}
return -1;
}
```
在这段代码中,我们定义了一个学生信息结构体`Student`,它包含姓名、学号和成绩。`display_student`函数用于打印单个学生的信息。`find_student`函数通过学号来查找学生,如果找到对应的学生,它将返回学生在数组中的索引;如果没有找到,它将返回-1。
在`main`函数中,我们先展示了所有学生的信息,然后提示用户输入一个学号来查找相关的学生信息。根据查找结果,程序将输出相应的学生信息或者提示未找到对应学号的学生。
AI智能问答网
免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。
点击这里>>使用创作工场,更聪明、更完整、更原创!