用c语言实现一个传统的小型学生信息管理系统,具体实现学生基本信息的录入,学生基本信息的输出,学生相关信息的查询,学生信息的修改,相关信息的统计
时间: 2024-05-03 15:18:56 浏览: 124
学生信息管理系统 基于c语言
5星 · 资源好评率100%
好的,下面是一个简单的学生信息管理系统的C语言代码实现:
```c
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct student{
int num; //学号
char name[20]; //姓名
int age; //年龄
int score; //成绩
};
struct student stu[20]; //定义学生数组,最多存储20个学生信息
int num=0; //记录当前学生信息的数量
void input(); //录入学生信息函数
void output(); //输出学生信息函数
void search(); //查询学生信息函数
void modify(); //修改学生信息函数
void statistics(); //统计学生信息函数
int main(){
int option;
while(1){
printf("\n=============================\n");
printf("学生信息管理系统\n");
printf("1. 录入学生信息\n");
printf("2. 输出学生信息\n");
printf("3. 查询学生信息\n");
printf("4. 修改学生信息\n");
printf("5. 统计学生信息\n");
printf("0. 退出\n");
printf("=============================\n");
printf("请选择操作:");
scanf("%d",&option);
switch(option){
case 1: input(); break;
case 2: output(); break;
case 3: search(); break;
case 4: modify(); break;
case 5: statistics(); break;
case 0: exit(0);
default: printf("输入错误,请重新输入!\n"); break;
}
}
return 0;
}
void input(){
if(num>=20){
printf("存储空间已满,无法录入新的学生信息!\n");
return;
}
printf("请输入学生学号:");
scanf("%d",&stu[num].num);
printf("请输入学生姓名:");
scanf("%s",stu[num].name);
printf("请输入学生年龄:");
scanf("%d",&stu[num].age);
printf("请输入学生成绩:");
scanf("%d",&stu[num].score);
num++;
printf("学生信息录入成功!\n");
}
void output(){
if(num==0){
printf("暂无学生信息!\n");
return;
}
for(int i=0;i<num;i++){
printf("学号:%d\t姓名:%s\t年龄:%d\t成绩:%d\n",stu[i].num,stu[i].name,stu[i].age,stu[i].score);
}
}
void search(){
int n;
printf("请输入要查询的学生学号:");
scanf("%d",&n);
int flag=0;
for(int i=0;i<num;i++){
if(stu[i].num==n){
printf("学号:%d\t姓名:%s\t年龄:%d\t成绩:%d\n",stu[i].num,stu[i].name,stu[i].age,stu[i].score);
flag=1;
break;
}
}
if(flag==0){
printf("未找到该学生信息!\n");
}
}
void modify(){
int n;
printf("请输入要修改的学生学号:");
scanf("%d",&n);
int flag=0;
for(int i=0;i<num;i++){
if(stu[i].num==n){
printf("请输入学生姓名:");
scanf("%s",stu[i].name);
printf("请输入学生年龄:");
scanf("%d",&stu[i].age);
printf("请输入学生成绩:");
scanf("%d",&stu[i].score);
printf("学生信息修改成功!\n");
flag=1;
break;
}
}
if(flag==0){
printf("未找到该学生信息!\n");
}
}
void statistics(){
if(num==0){
printf("暂无学生信息!\n");
return;
}
int sum=0,max=stu[0].score,min=stu[0].score;
for(int i=0;i<num;i++){
sum+=stu[i].score;
if(stu[i].score>max){
max=stu[i].score;
}
if(stu[i].score<min){
min=stu[i].score;
}
}
printf("学生人数:%d\t平均成绩:%.2f\t最高成绩:%d\t最低成绩:%d\n",num,(float)sum/num,max,min);
}
```
这个学生信息管理系统比较简单,只是实现了基本功能,但是已经可以满足日常管理学生信息的需求。你可以根据自己的实际需求进行修改和扩展。
阅读全文