学生信息管理系统.docx
- 文档编号:4839837
- 上传时间:2023-05-07
- 格式:DOCX
- 页数:28
- 大小:21.35KB
学生信息管理系统.docx
《学生信息管理系统.docx》由会员分享,可在线阅读,更多相关《学生信息管理系统.docx(28页珍藏版)》请在冰点文库上搜索。
学生信息管理系统
学生信息管理系统
程序源码
#include
#include
/****定义学生信息结构体变量****/
typedefstruct
{
charname[20];//姓名
charstu_num[12];//学号
charsex[4];//性别
charbirthday[10];//出生年月
charface[20];//政治面貌
floatscore[3];//c语言,VB,英语成绩
charjiguan[10];//籍贯
charclass_num[10];//班级
}stu_inf;
externstu_infstudent[20];
externstu_infstu_new[20]={0};
stu_inf*sutdent_inf;
intcamp(char*str,char*str1,intnum);
stu_inf*compare_name(stu_inf*value,char*name);//比较姓名,返回姓名相同的结构体的指针
stu_inf*conpare_num(stu_inf*value,char*num);//比较学号,返回学号相同的结构体的指针
intnum_student(stu_inf*value);//统计学生人数
voidcacu_peo_sex(stu_inf*value);//按性别统计人数
voidcacu_peo_bir(stu_inf*value);//按生日统计人数
voidcacu_peo_face(stu_inf*value);//按政治面貌统计人数
voidcacu_peo_jiguan(stu_inf*value);//按籍贯统计人数
voidcacu_peo_class(stu_inf*value);//按班级统计人数
voidout_seq(stu_inf*value,charseq);//打印学生排名
voidsequnce_inf(stu_inf*value,charseq);//算出学生排名
voidwrite_inf(stu_inf*value,intnum);//录入学生信息
voidsch_inf(stu_inf*value);//查询学生信息
voidchange_stu_inf();//更改学生信息
voidchange_stu_sco(stu_inf*value);//更改学生成绩
voiddelet_stu_inf(stu_inf*value,char*name);//删除学生信息
voiddisplay_inf();
stu_infstudent_ERROR={"输入信息错误","0000000000","无","100000000","信息错误",{0,0,0},"无","1000000"};
/****************************************初始化以录入学生信息********************************************************/
stu_infstudent[20]={{"张伊","1340830601","女","19940201","团员",{85,86,76},"中国四川","13408306"}
{"李四","1340830602","男","19950526","群众",{73,76,55},"中国天津","13408306"}
{"王小五","1340830705","男","19940201","党员",{93,85,64},"中国上海","13408307"}
{"李欣","1340830706","女","19970525","团员",{83,75,65},"中国上海","13408307"}
{"陆迅","1340830708","男","19930924","党员",{80,74,85},"中国天津","13408307"}
{"胡亥","1340830810","男","19940501","党员",{82,79,86},"中国北京","13408308"}
{"林峰","1340830811","男","19940209","党员",{79,52,84},"中国四川","13408308"}
{"刘思","1340830812","女","19970407","群众",{98,53,96},"中国湖北","13408308"}
{"高斯","1340830813","男","19940206","群众",{97,66,90},"中国湖北","13408308"},0,0,0,0
};
intmain()
{
charmode=0,mode1=0,mode2=0,mode3=0,mode4=0,mode5=0,mode6=0,mode7=0;//各种模式
/****************************************声明20个待录入学生的内存空间**********************************************************************/
stu_infstudent_add[20]={0};
charstudent_num=9;//待录入的学生的第一个值
charname_temp_1[20],temp_name[20];//姓名
charstu_num_temp[11];//学号*/
stu_inf*stu_change_val;
class_menu:
//goto的第一级
printf("\n\n\n\n");
printf("\t|________________________________________________________|\n");
printf("\t|学生个人信息管理系统|\n");
printf("\t|________________________________________________________|\n");
printf("\t|1.学生信息管理|\n");
printf("\t||\n");
printf("\t|2.学生成绩管理|\n");
printf("\t||\n");
printf("\t|3.退出系统|\n");
printf("\t|________________________________________________________|\n");
//printf("%d\n",num_student(student));
printf("请输入您的选择序号:
\n");
printf("\n\n");
fflush(stdin);/*清除输入缓冲流中的回车符*/
class_2:
//goto的第二级
scanf("%c",&mode);
printf("您的选择是%c\n",mode);
switch(mode)
{
case'1':
class_sch:
printf("\t|________________________________________________________|\n");
printf("\t|学生信息管理|\n");
printf("\t|________________________________________________________|\n");
printf("\t|1.录入学生信息|\n");
printf("\t||\n");
printf("\t|2.查阅学生信息|\n");
printf("\t||\n");
printf("\t|3.统计学生人数|\n");
printf("\t||\n");
printf("\t|4.返回主菜单|\n");
printf("\t|________________________________________________________|\n");
printf("请输入您的选择序号:
\n");
fflush(stdin);/*清除输入缓冲流中的回车符*/
scanf("%c",&mode1);
switch(mode1)
{
case'1':
write_inf(student,student_num);
student_num++;
gotoclass_sch;
case'2':
class_chayue:
printf("\t|________________________________________________________|\n");
printf("\t|查阅学生信息|\n");
printf("\t|________________________________________________________|\n");
printf("\t|1.以姓名方式查询|\n");
printf("\t||\n");
printf("\t|2.以学号方式查询|\n");
printf("\t||\n");
printf("\t|3.返回上一级|\n");
printf("\t||\n");
printf("\t|4.返回主菜单|\n");
printf("\t|________________________________________________________|\n");
printf("请输入您的查询方式序号:
\n");
fflush(stdin);/*清除输入缓冲流中的回车符*/
scanf("%c",&mode2);
fflush(stdin);/*清除输入缓冲流中的回车符*/
switch(mode2)
{
case'1':
//姓名查询
printf("姓名查询方式\n");
printf("请输入要查询的学生姓名\n");
gets(name_temp_1);
sch_inf(compare_name(student,name_temp_1));gotoclass_chayue;
case'2':
//学号查询
printf("学号查询方式\n");
printf("请输入要查询的学生学号\n");
gets(stu_num_temp);
sch_inf(conpare_num(student,stu_num_temp));gotoclass_chayue;
case'3':
gotoclass_sch;
case'4':
gotoclass_menu;
}
case'3':
//统计学生人数
class_cacu:
printf("\t|________________________________________________________|\n");
printf("\t|统计学生人数|\n");
printf("\t|________________________________________________________|\n");
printf("\t|1.按性别统计|\n");
printf("\t||\n");
printf("\t|2.按出生年月统计|\n");
printf("\t||\n");
printf("\t|3.按籍贯统计|\n");
printf("\t||\n");
printf("\t|4.按政治面貌统计|\n");
printf("\t||\n");
printf("\t|5.按班级统计|\n");
printf("\t||\n");
printf("\t|6.返回上一级|\n");
printf("\t||\n");
printf("\t|7.返回主菜单|\n");
printf("\t|________________________________________________________|\n");
printf("请选择您的统计方式\n\n");
fflush(stdin);/*清除输入缓冲流中的回车符*/
scanf("%c",&mode5);
switch(mode5)
{
case'1':
cacu_peo_sex(student);//统计性别
gotoclass_cacu;
case'2':
cacu_peo_bir(student);
gotoclass_cacu;
case'3':
cacu_peo_jiguan(student);
gotoclass_cacu;
case'4':
cacu_peo_face(student);
gotoclass_cacu;
case'5':
cacu_peo_class(student);
gotoclass_cacu;
case'6':
gotoclass_sch;
case'7':
gotoclass_menu;
}
case'4':
gotoclass_menu;
}
case'2':
//学生成绩管理
class_score:
printf("\t|________________________________________________________|\n");
printf("\t|学生成绩管理|\n");
printf("\t|________________________________________________________|\n");
printf("\t|1.查看学生成绩排名|\n");
printf("\t||\n");
printf("\t|2.更改学生成绩信息|\n");
printf("\t||\n");
printf("\t|3.返回上一级|\n");
printf("\t||\n");
printf("\t|4.返回主菜单|\n");
printf("\t|________________________________________________________|\n");
printf("\n\n");
printf("请输入您的选择序号:
\n");
fflush(stdin);/*清除输入缓冲流中的回车符*/
scanf("%c",&mode3);
fflush(stdin);/*清除输入缓冲流中的回车符*/
switch(mode3)
{
case'1':
//查看学生成绩排名
class_score_1:
printf("\t|________________________________________________________|\n");
printf("\t|学生成绩管理|\n");
printf("\t|________________________________________________________|\n");
printf("\t|1.查看c语言成绩排名|\n");
printf("\t||\n");
printf("\t|2.查看VB成绩排名|\n");
printf("\t||\n");
printf("\t|3.查看英语成绩排名|\n");
printf("\t||\n");
printf("\t|4.返回主菜单|\n");
printf("\t|________________________________________________________|\n");
printf("请输入将要排序的课程序号\n");
fflush(stdin);/*清除输入缓冲流中的回车符*/
scanf("%c",&mode4);
fflush(stdin);/*清除输入缓冲流中的回车符*/
switch(mode4)
{
case'1':
sequnce_inf(student,'1');gotoclass_score_1;
case'2':
sequnce_inf(student,'2');gotoclass_score_1;
case'3':
sequnce_inf(student,'3');gotoclass_score_1;
case'4':
gotoclass_menu;
}
case'2':
//更改学生成绩信息
class_change:
//sch_inf(stu_change_val);
printf("\t|________________________________________________________|\n");
printf("\t|学生成绩更改|\n");
printf("\t|________________________________________________________|\n");
printf("\t|1.C语言成绩|\n");
printf("\t||\n");
printf("\t|2.VB成绩|\n");
printf("\t||\n");
printf("\t|3.英语成绩|\n");
printf("\t||\n");
printf("\t|4.返回上一级|\n");
printf("\t||\n");
printf("\t|5.返回主菜单|\n");
printf("\t|________________________________________________________|\n");
printf("请选择您要修改的学生项目,回车键结束\n");
scanf("%c",&mode6);
fflush(stdin);/*清除输入缓冲流中的回车符*/
switch(mode6)
{
case'1':
fflush(stdin);/*清除输入缓冲流中的回车符*/
printf("请输入您要修改的学生姓名,回车键结束\n");
gets(temp_name);
stu_change_val=compare_name(student,temp_name);
printf("当前学生信息是:
%.2f\n",stu_change_val->score[0]);
printf("请输入您要修改的学生信息内容,回车键结束\n");
scanf("%f",stu_change_val->score+0);
printf("修改后的学生信息是:
%.2f\n",stu_change_val->score[0]);
gotoclass_change;
case'2':
fflush(stdin);/*清除输入缓冲流中的回车符*/
printf("请输入您要修改的学生姓名,回车键结束\n");
gets(temp_name);
stu_change_val=compare_name(student,temp_name);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 信息管理 系统