c语言中实现学生成绩录入,学生成绩的输出和按成绩查询学生信息
时间: 2024-03-24 13:41:24 浏览: 59
用c语言实现的学生成绩管理信息系统
以下是C语言实现学生成绩录入、输出和按成绩查询学生信息的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_STUDENTS 100
struct student {
char name[20];
int score;
};
struct student students[MAX_STUDENTS];
int num_students = 0;
// 录入学生成绩
void add_student() {
if (num_students >= MAX_STUDENTS) {
printf("Error: Too many students!\n");
return;
}
struct student s;
printf("Enter name: ");
scanf("%s", s.name);
printf("Enter score: ");
scanf("%d", &s.score);
students[num_students++] = s;
}
// 输出学生成绩
void list_students() {
printf("Name\tScore\n");
for (int i = 0; i < num_students; i++) {
printf("%s\t%d\n", students[i].name, students[i].score);
}
}
// 按成绩查询学生信息
void find_students() {
int min_score, max_score;
printf("Enter min score: ");
scanf("%d", &min_score);
printf("Enter max score: ");
scanf("%d", &max_score);
printf("Name\tScore\n");
for (int i = 0; i < num_students; i++) {
if (students[i].score >= min_score && students[i].score <= max_score) {
printf("%s\t%d\n", students[i].name, students[i].score);
}
}
}
int main() {
int choice;
do {
printf("\n");
printf("1. Add student\n");
printf("2. List students\n");
printf("3. Find students by score\n");
printf("4. Exit\n");
printf("Enter choice: ");
scanf("%d", &choice);
switch (choice) {
case 1:
add_student();
break;
case 2:
list_students();
break;
case 3:
find_students();
break;
case 4:
printf("Goodbye!\n");
break;
default:
printf("Invalid choice!\n");
break;
}
} while (choice != 4);
return 0;
}
```
在这个示例代码中,我们使用了一个结构体来表示学生信息,包括姓名和成绩。我们使用一个全局数组 `students` 来保存所有学生的信息,其中 `num_students` 表示已经录入的学生数量。
在主函数中,我们使用一个循环来接受用户输入的操作,并根据用户的选择调用不同的函数。`add_student` 函数用来录入学生成绩,`list_students` 函数用来输出学生成绩,`find_students` 函数用来按成绩查询学生信息。
这个示例代码只是一个简单的例子,实际开发中可能需要更多的功能和更严格的输入检查。
阅读全文