学生信息管理系统.docx
《学生信息管理系统.docx》由会员分享,可在线阅读,更多相关《学生信息管理系统.docx(11页珍藏版)》请在冰豆网上搜索。
![学生信息管理系统.docx](https://file1.bdocx.com/fileroot1/2022-11/28/45695602-dc2e-4f9e-a4f7-a63a5e4c8bf7/45695602-dc2e-4f9e-a4f7-a63a5e4c8bf71.gif)
学生信息管理系统
//
//Student.m
//C_学籍信息管理系统
//
//Createdbyanouon15/11/27.
//Copyright©2015年韩彬二代.Allrightsreserved.
//
#import"Student.h"
voidprintStudent(Student*stus)
{
printf("学号:
%-2d姓名:
%-8s性别:
%-2c年龄:
%-2d分数:
%-6.2f\n",stus->number,stus->name,stus->gender,stus->age,stus->score);
}
voidprintAllStudents(Student*stus,intcount)
{
for(inti=0;iif(stus[i].number!
='\0'){
printf("学号:
%-2d姓名:
%-8s性别:
%-2c年龄:
%-2d分数:
%-6.2f\n",stus[i].number,stus[i].name,stus[i].gender,stus[i].age,stus[i].score);
}else
{
break;
}
}
}
intaddStudent(Student*stus,intcount)
{
Studentstu={0};
intn=0;
printf("请输入添加学生的数量:
");
scanf("%d",&n);
for(inti=0;iprintf("请输入%d个学生的信息",i+1);
printf("学号(数字):
");
scanf("%d",&stu.number);
printf("姓名(字符串):
");
scanf("%s",stu.name);
printf("年龄(数字):
");
scanf("%d",&stu.age);
printf("性别(字符):
");
rewind(stdin);
scanf("%c",&stu.gender);
printf("成绩(数字):
");
scanf("%f",&stu.score);
stus[count+i]=stu;
printf("添加成功!
!
\n");
}
returncount+n;
}
intdelStudentWithNumber(Student*stus,intcount)
{
intnumber=0;
printf("请输入删除学生的学号:
");
scanf("%d",&number);
for(inti=0;iif(stus[i].number==number)
{
for(intj=i;j{
stus[j]=stus[j+1];
}
printf("删除成功!
!
\n");
return--count;
}
}
printf("没有学生信息,请重新输入!
\n");
returncount;
}
intdelStudentWithName(Student*stus,intcount)
{
Studentstu={0};
printf("请输入删除的学生姓名:
");
scanf("%s",stu.name);
for(inti=0;i{
if(strcmp(stus[i].name,stu.name)==0)
{
for(intj=i;j{
stus[j]=stus[j+1];
}
printf("删除成功!
!
\n");
return--count;
}
}
printf("没有学生信息,请重新输入!
\n");
returncount;
}
voidsortStudentsWithNumber(Student*stus,intcount)
{
for(inti=0;ifor(intj=0;jif(stus[j].number>stus[j+1].number){
Studenttemp=stus[j];
stus[j]=stus[j+1];
stus[j+1]=temp;
}
}
}
for(inti=0;iprintf("学号:
%-2d姓名:
%-8s性别:
%-2c年龄:
%-2d分数:
%-6.2f\n",stus[i].number,stus[i].name,stus[i].gender,stus[i].age,stus[i].score);
}
}
voidsortStudentsWithName(Student*stus,intcount)
{
for(inti=0;ifor(intj=0;jif(strcmp(stus[j].name,stus[j+1].name)>0){
Studenttemp=stus[j];
stus[j]=stus[j+1];
stus[j+1]=temp;
}
}
}
for(inti=0;iprintf("学号:
%-2d姓名:
%-8s性别:
%-2c年龄:
%-2d分数:
%-6.2f\n",stus[i].number,stus[i].name,stus[i].gender,stus[i].age,stus[i].score);
}
}
Student*lookStudentsWithNumber(Student*stus,intcount)
{
intnumber;
printf("请输入查询的学号:
");
scanf("%d",&number);
for(inti=0;iif(stus[i].number==number){
printf("学号:
%-2d姓名:
%-8s性别:
%-2c年龄:
%-2d分数:
%-6.2f\n",stus[i].number,stus[i].name,stus[i].gender,stus[i].age,stus[i].score);
returnstus;
}
}
printf("没有该生信息,请确定无误再输入!
\n");
return0;
}
Student*lookStudentsWithName(Student*stus,intcount)
{
Studentstu={0};
printf("请输入查询的学生姓名:
");
scanf("%s",stu.name);
for(inti=0;iif(strcmp(stus[i].name,stu.name)==0){
printf("学号:
%-2d姓名:
%-8s性别:
%-2c年龄:
%-2d分数:
%-6.2f\n",stus[i].number,stus[i].name,stus[i].gender,stus[i].age,stus[i].score);
returnstus;
}
}
printf("没有该生信息,请确定无误再输入!
\n");
return0;
}
//
//main.m
//C_学籍信息管理系统
//
//Createdbylanouon15/11/27.
//Copyright©2015年韩彬二代.Allrightsreserved.
//
#import
#import"Student.h"
intmain(intargc,constchar*argv[]){
Studentstu1={1,"zhaoritian",'m',25,95};
Studentstu2={2,"liupeifu",'m',21,89};
Studentstu3={3,"hangaozu",'m',100,99};
Studentstu4={4,"liuyifei",'f',30,91};
Studentstu5={5,"hanwudi",'m',120,80};
StudentstuArr[30]={stu1,stu2,stu3,stu4,stu5};
Student*p=stuArr;
//一个打印Student的函数
//Student*p=&stu1;
//printStudent(p);
//
//打印全部学员的函数
//printAllStudents(stuArr,5);
intcount=5;
while(YES){
printf("______________________\n");
printf("输入1:
添加新学生的信息\n");
printf("输入2:
根据姓名删除学生\n");
printf("输入3:
根据学号删除学生\n");
printf("输入4:
对所有按姓名排序\n");
printf("输入5:
对所有按学号排序\n");
printf("输入6:
根据姓名查找学生\n");
printf("输入7:
根据学号查找学生\n");
printf("输入8:
查看所有学生信息\n");
printf("========================\n");
printf("请选择功能:
");
intnumber=0;
scanf("%d",&number);
if(number>=1&&number<=8){
switch(number){
caseaddNewStudent1:
count=addStudent(p,count);
break;
casenameByDelete2:
count=delStudentWithName(p,count);
break;
casenumberByDelete3:
count=delStudentWithNumber(p,count);
break;
casenameBySort4:
sortStudentsWithName(p,count);
break;
casenumberBySort5:
sortStudentsWithNumber(p,count);
break;
casenameByFind6:
lookStudentsWithName(p,count);
break;
casenumberByFind7:
lookStudentsWithNumber(p,count);
break;
caseprintAllStudent8:
printAllStudents(p,count);
break;
default:
break;
}
}else
{
printf("你输入的数字有误,请重新输入!
\n");
continue;
}
printf("现在一共有%d个学生!
\n",count);
}
return0;
}
//
//Student.h
//C_学籍信息管理系统
//
//Createdbylanouon15/11/27.
//Copyright©2015年韩彬二代.Allrightsreserved.
//
#import
//定义一个Student结构体
typedefstructstudent
{
intnumber;
charname[20];
chargender;
intage;
floatscore;
}Student;
//3.声明一个打印Student的函数
voidprintStudent(Student*stus);
//4.声明一个打印数组中所有学生的函数
voidprintAllStudents(Student*stus,intcount);
//5.声明一个添加学生的函数
intaddStudent(Student*stus,intcount);
//6.声明一个按学号删除学生的函数
intdelStudentWithNumber(Student*stus,intcount);
//7.声明一个按姓名删除学生的函数
intdelStudentWithName(Student*stus,intcount);
//8.定义一个按学号排序的函数
voidsortStudentsWithNumber(Student*stus,intcount);
//9.定义一个按姓名排序的函数
voidsortStudentsWithName(Student*stus,intcount);
//10.定义一个按学号查找的函数
Student*lookStudentsWithNumber(Student*stus,intcount);
//11.定义一个按姓名查找的函数
Student*lookStudentsWithName(Student*stus,intcount);
//12.声明一个枚举FunctionName
enumFunctionName
{
addNewStudent1=1,//添加新学生
nameByDelete2,//根据姓名删除学生
numberByDelete3,//根据学号删除学生
nameBySort4,//对所有按姓名排序
numberBySort5,//对所有按学号排序
nameByFind6,//根据姓名查找学生
numberByFind7,//根据学号查找学生
printAllStudent8//查看所有学生
};