请使用c语言写一个学生信息管理系统
时间: 2023-09-12 12:06:04 浏览: 38
好的,以下是一个简单的学生信息管理系统的 C 代码示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_STUDENTS 100
struct Student {
char name[50];
int id;
float gpa;
};
struct Student students[MAX_STUDENTS];
int num_students = 0;
void add_student() {
if (num_students == MAX_STUDENTS) {
printf("Error: Maximum number of students reached.\n");
return;
}
struct Student new_student;
printf("Enter name: ");
scanf("%s", new_student.name);
printf("Enter ID: ");
scanf("%d", &new_student.id);
printf("Enter GPA: ");
scanf("%f", &new_student.gpa);
students[num_students] = new_student;
num_students++;
printf("Student added successfully.\n");
}
void display_students() {
printf("Name\tID\tGPA\n");
for (int i = 0; i < num_students; i++) {
printf("%s\t%d\t%.2f\n", students[i].name, students[i].id, students[i].gpa);
}
}
void search_student() {
int search_id;
printf("Enter ID to search: ");
scanf("%d", &search_id);
for (int i = 0; i < num_students; i++) {
if (students[i].id == search_id) {
printf("Name: %s\nID: %d\nGPA: %.2f\n", students[i].name, students[i].id, students[i].gpa);
return;
}
}
printf("Error: Student with ID %d not found.\n", search_id);
}
int main() {
int choice;
while (1) {
printf("\n1. Add student\n2. Display all students\n3. Search student by ID\n4. Exit\n");
printf("Enter your choice: ");
scanf("%d", &choice);
switch (choice) {
case 1:
add_student();
break;
case 2:
display_students();
break;
case 3:
search_student();
break;
case 4:
exit(0);
default:
printf("Invalid choice.\n");
}
}
return 0;
}
```
该程序支持添加学生、展示所有学生、根据 ID 搜索学生等功能。注意,该示例只是一个基本的框架,你可以根据需求添加更多功能和优化代码。