学生成绩管理系统结构体数组_第1页
学生成绩管理系统结构体数组_第2页
学生成绩管理系统结构体数组_第3页
学生成绩管理系统结构体数组_第4页
学生成绩管理系统结构体数组_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、/1102401班学生成绩治理系统.cpp:Definestheentrypointfortheconsoleapplication./#includestdafx.h#include<stdio.h>/*清屏*/*显示目录*/#include<conio.h>#include<stdlib.h>#include<string.h>#include<iostream>#include<windows.h>#pragmacomment(lib,winmm.lib)usingnamespacestd;#defineMAX100

2、0voidmanager();用户登录界面*/*/*主菜单*/voidmenu();输入数据函数/*/*/*读取函数voidread();/*直接从文件读取选择文彳读取*/*显示数据函数/*/*/*显示各科成绩函数/*治理员登录界面*/voidusers();voidinput();*/voidread1()voidread2();voiddisplay();voiddisplay1();/*以学号排序*/voiddisplay2();/*求和函数*/*/*/*/*数学成绩排序*/:英语成绩排序voidsum();总成绩排序voidsort();voidsort1();voidsort2();

3、*/voidsort3();voidsort4();语文成绩排序*/*/*物理成绩排序按学号排序/*/voidmodify();*/*/*化学成绩排序*/voidsort5();voidsort6();修改文件函数/*/删除数据函数voiddel();/*插入数据函数*/查找数据函数按姓名查找/*voidinsert();*/*voidfind();按学号查找voidfind1();/*/*/voiddel_file();*/删除默认文件内容/*删除指定文件内容*/voidfind2();*/删除文件函数voiddel_file1();voiddel_file2();/*/*/*保存数据函数v

4、oidsave();voidsave1();voidsave2();*/删除文件/*voidremove1();voidremove2();voidcopy();voidrename();intnow_no;structstudentintno;charname20;intshuxue;intyingyu;intyuwen;intwuli;inthuaxue;intsum;Student;voidmain()inta;inti=0;t11111111欢送进入1102401ttt1.治理员登录ntttt2.用户登录ttt选择(1/2/3):);fflush(stdin);scanf(%d,&am

5、p;a);中的as,%d为整型数标志*/保存到默认文件/*/*/保存到指定文件voidremove();/*删除默认文件*/*删除指定文件*/*复制指定文件*/*重命名文件*/*定义学生信息*/*学号*/*姓名*/*数学*/*英语*/*语文*/*物理*/*化学*/*总分*/班学生成绩治理系统111111111n);ntttt3.退出n);/*&as为引用型指针,意思是引用intas)switch(a)case1:system(cls);system(color8f);manager();break;case2:system(cls);system(color2f);users();br

6、eak;case3:system(exit);system(color3f);exit(0);default:)structstudentstuMAX,*p;voidmanager()(inth,flag1,flag2;charname20=H2401,password10=gis;charperson20,password110;printf(ttt111111111111治理员登录1八八八八八八八八八八八八n);for(h=0;h!=4;)(tttt帐号:);fflush(stdin);gets(person);flag1=strcmp(person,name);/*strcmp比拟per

7、son,name,相等flag1=0*/ttt密码:);gets(password1);flag2=strcmp(password,password1);/*比拟password,password1,相等flag2=0*/if(flag1=0&&flag2=0)(menu();break;)else(tta222帐号或密码错误!nn);PlaySound(C:windowsmediawindows.wav,NULL,SND_FILENAME|SND_ASYNC|SND_LOOP);tta222请注意:您还剩d次时机!nn,3-h);/*h先为0,“4-h为剩下可输入次数,此时h

8、仍为0*/system(pause);system(cls);h+;)if(h=4)PlaySound(NULL,NULL,SND_FILENAME);system(cls);main();)voidusers()(*n);学生登录nttt*inti,j;charpassword10=66666;charstr20,password110,as;do(read1();ttt姓名:);fflush(stdin);gets(str);ttt密码:);gets(password1);j=strcmp(password,password1);if(j=0)(for(i=0;i<now_no;i+

9、)(if(!strcmp(,str)(system(cls);学号tt姓名t数学t英语t语文t物理t化学t总分n);%ut%st%.dt%.dt%.dt%.dt%.dt%.dn,stui.no,,stui.shuxue,stui.yingyu,stui.yuwen,stui.wuli,stui.huaxue,stui.sum);)else(轴潼晴茏该学生不存在或密码错误,请您确认输入无误!aaan);)system(pause);system(cls);main();)while(!as);system(cls);)voidmenu()(PlaySound(

10、NULL,NULL,SND_FILENAME);system(cls);/清屏system(color1f);intas;inti=0;do(tttt1.新录入学生成绩ntttt2.从文件读入学生成绩ntttt3.显示全体学生成绩ntttt4.总分排序ntttt5.全体学生单科成绩排序ntttt6.学号排序ntttt7.修改选定学生成绩ntttt8.删除选定学生成绩ntttt9.添加学生成绩ntttt10.查询选定学生成绩ntttt11.删除文件中学生成绩ntttt12.保存学生成绩ntttt13.删除文件ntttt14.复制文件ntttt15.重命名文件ntttt16.退出n);ttt选择功

11、能选项(输入所选功能前的数字):);fflush(stdin);scanf(%d,&as);switch(as)(case1:system(cls);system(color8f);input();break;as*/*/*case*,为case2:system(cls);system(color2f);调用函数声明/*/read();break;case3:system(cls);system(color0f);display();break;case4:system(cls);system(color1f);sort();break;case5:system(cls);system

12、(color5f);display1();break;case6:system(cls);system(color7f);display2();break;case7:system(cls);system(color1f);modify();break;case8:system(cls);system(color2f);del();case9:system(cls);system(color7f);insert();break;case10:system(cls);system(color6f);find();break;case11:system(cls);system(color9f);d

13、el_file();break;case12:system(cls);system(color1f);*/save();/*保存break;case13:system(cls);system(color3f);remove();break;case14:system(cls);system(color3f);copy();break;case15:system(cls);system(color3f);rename();break;case16:system(cls);system(color3f);main();break;/*删除文件中的信息*/break;default:system(c

14、ls);menu();)while(1);1/*while(1),表示真,*/下循环去示while(1)所以表远永/*至此功能选择模块结束*/voidinput()*/学生信息录入模块/*inti=0;charch;dottt1.录入学生信息n输入第%d个学生的成绩n,i+1);/i+1那么使%d为1输入10位的学生学号:);scanf(%s,&stui.no);/*清理缓存以防enter键为/*以字符串的方式输入第i个fflush(stdin);个字符*/输入学生姓名:);fflush(stdin);gets();学生的学号*/数学:);scanf(%d,&

15、stui.shuxue);英语:);fflush(stdin);scanf(%d,&stui.yingyu);语文:);fflush(stdin);scanf(%d,&stui.yuwen);物理:);fflush(stdin);scanf(%d,&stui.wuli);化学:);fflush(stdin);scanf(%d,&stui.huaxue);n);i+;now_no=i;轴潼晴茏是否继续输入?(Y/N);fflush(stdin);ch=getch();system(cls);system(colorBf);while(ch!='n'

16、&&ch!='N');system(cls);system(colorCf);voidread()intn;intc=0;ttt1.读取默认存储文件ntttt2.读取指定存储文件ntttt3.退出n);ttt选择(1/2/3):);fflush(stdin);scanf(%d,&n);switch(n)case1:system(cls);system(color8f);read1();break;case2:system(cls);system(color2f);read2();break;case3:system(cls);system(color3f

17、);menu();default:system(cls);read();voidread1()inti;charfilepath20;FILE*fp=fopen(H2401.xls,);now_no=0;for(i=0;i<MAX&&!feof(fp);i+)%dt%st%dt%dt%dt%dt%dt%dn,&stui.no,,&stui.shuxue,&stui.yingyu,&stui.yuwen,&stui.wuli,&stui.huaxue,&stui.sum);now_no+;fclose

18、(fp);return;voidread2()FILE*fp;inti;charfilepath20;轴潼晴茏输入要读入的文件路径:);fflush(stdin);gets(filepath);if(fp=fopen(filepath,)=NULL)轴潼晴茏找不到s文件!an,filepath);system(pause);system(cls);return;now_no=0;for(i=0;i<MAX&&!feof(fp);i+)%st%st%dt%dt%dt%dt%dt%dn,&stui.no,,&stui.shuxue,&

19、stui.yingyu,&stui.yuwen,&stui.wuli,&stui.huaxue,&stui.sum);now_no+;fclose(fp);轴潼晴茏保存的在文件%s中的所有信息已经读入!n,filepath);/*按任意键继续*/system(pause);system(cls);system(color6f);)voiddisplay()/*显示成绩*/(inti;charas;sum();do(tt1102401班学生成绩如下n);学号tt姓名t数学t英语t语文t物理t化学t总分n);for(i=0;i<now_no&&

20、0;i+)%dt%st%.dt%.dt%.dt%.dt%.dt%.dn,stui.no,,stui.shuxue,stui.yingyu,stui.yuwen,stui.wuli,stui.huaxue,stui.sum);tt按任意键返回主菜单);fflush(stdin);as=getch();)while(!as);system(cls);system(color1f);)*/求总分/*voidsum()(inti;for(i=0;i<now_no;i+)(stui.sum=stui.shuxue+stui.yingyu+stui.yuwen+s

21、tui.wuli+stui.huaxue;)voiddisplay1()/*显示单科成绩排名*/(inti;charas;do(printf(H2401班学生数学成绩排名n);学号tt姓名t分数n);sort1();for(i=0;i<now_no&&0;i+)%dt%st%,dtn,stui.no,,stui.shuxue);printf(H2401班学生英语成绩排名n);学号tt姓名t分数n);sort2();for(i=0;i<now_no&&0;i+)%dt%st%.dtn,stui.no

22、,,stui.yingyu);printf(H2401班学生语文成绩排名n);学号tt姓名t分数n);sort3();for(i=0;i<now_no&&0;i+)%dt%st%.dtn,stui.no,,stui.yuwen);sort4();printf(H2401班学生物理成绩排名n);学号tt姓名t分数n);sort3();for(i=0;i<now_no&&0;i+)%dt%st%.dtn,stui.no,,stui.wuli);printf(H240

23、1班学生化学成绩排名n);学号tt姓名t分数n);sort3();for(i=0;i<now_no&&0;i+)%dt%st%.dtn,stui.no,,stui.huaxue);tt按任意键返回主菜单);fflush(stdin);as=getch();while(!as);system(cls);system(colorFf);voiddisplay2()inti;charas;sort6();sum();dott1102401班学生成绩如下n);学号tt姓名t数学t英语t语文t物理t化学t总分n);for(i=0;i<now

24、_no&&0;i+)%dt%st%,dt%,dt%,dt%,dt%,dt%,dn,stui.no,,stui.shuxue,stui.yingyu,stui.yuwen,stui.wuli,stui.huaxue,stui.sum);tt按任意键返回主菜单);fflush(stdin);as=getch();while(!as);system(cls);system(color1f);voidmodify()/*修改成绩*/inti;charstr20;轴潼晴茏输入要修改的学生姓名:);fflush(stdin);gets(str);for(

25、i=0;i<now_no;i+)if(!strcmp(,str)system(cls);system(color5f);tt输入修改后学生信息n);学号:);fflush(stdin);scanf(%d,&stui.no);:);数学fflush(stdin);scanf(%d,&stui.shuxue);英语:);fflush(stdin);scanf(%d,&stui.yingyu);语文:);fflush(stdin);scanf(%d,&stui.yuwen);物理:);fflush(stdin);scanf(%d,&st

26、ui.wuli);化学:);fflush(stdin);scanf(%d,&stui.huaxue);n);sort();break;system(pause);system(cls);system(color5f);voidsort()指向成绩高的那个/*temp*/学生结点inti,j;sum();/*now_no=0*/for(j=1;j<=now_no-i;j+)if(stuj-1.sum<stuj.sum)temp=stuj;stuj=stuj-1;*/位置彳递/*3排名已完成进入功能可进行显示system(pause);system(cls);n);轴潼晴茏/*

27、总分排名*/structstudenttemp;for(i=1;i<now_no;i+)stuj-1=temp;system(colorDf);voidsort1()structstudenttemp;inti,j;for(i=1;i<now_no;i+)/*数学排名*/*英语排名*/voidsort3()for(j=1;j<=now_no-i;j+)(if(stuj-1.shuxue<stuj.shuxue)(temp=stuj;stuj=stuj-1;stuj-1=temp;voidsort2()(structstudenttemp;inti,j;for(i=1;i

28、<now_no;i+)(for(j=1;j<=now_no-i;j+)(if(stuj-1.yingyu<stuj.yingyu)(temp=stuj;stuj=stuj-1;stuj-1=temp;*/语文排名/*(structstudenttemp;inti,j;for(i=1;i<now_no;i+)(for(j=1;j<=now_no-i;j+)(if(stuj-1.yuwen<stuj.yuwen)(temp=stuj;stuj=stuj-1;stuj-1=temp;)voidsort4()/*物理排名*/(structstudenttemp;in

29、ti,j;for(i=1;i<now_no;i+)(for(j=1;j<=now_no-i;j+)(if(stuj-1.wuli<stuj.wuli)(temp=stuj;stuj=stuj-1;stuj-1=temp;)*/*voidsort5()化学排名(structstudenttemp;inti,j;for(i=1;i<now_no;i+)(for(j=1;j<=now_no-i;j+)(if(stuj-1.huaxue<stuj.huaxue)(temp=stuj;stuj=stuj-1;stuj-1=temp;)*/按学号排序/*voidsort

30、6()(structstudenttemp;inti,j;for(i=1;i<now_no;i+)(for(j=1;j<=now_no-i;j+)(if(stuj-1.no>stuj.no)temp=stuj;stuj=stuj-1;stuj-1=temp;)voiddel()/*删除学生成绩*/(unsignedlonginum;inti;输入要删除学生的学号:);轴潼晴茏fflush(stdin);scanf(%d,&inum);找到学号相匹配的学生for(i=0;i<now_no;i+)/if(stui.no=inum)if(i=now_no)now_no

31、-=1;elsestui=stunow_no-1;now_no-=1;)sort();*/插入学生成绩/*再排序*/*break;)!an);printf(a该学生不存在,请您确认输入无误system(pause);system(cls);system(color2f);)voidinsert()charch;dott输入新插入学生成绩n);输入学生学号:);scanf(%d,&stunow_no.no);fflush(stdin);输入学生姓名:);fflush(stdin);gets(stunow_);数学:);fflush(stdin);scanf(%d,&

32、stunow_no.shuxue);英语:);fflush(stdin);scanf(%d,&stunow_no.yingyu);语文:);fflush(stdin);scanf(%d,&stunow_no.yuwen);物理:);fflush(stdin);scanf(%d,&stunow_no.wuli);化学:);fflush(stdin);scanf(%d,&stunow_no.huaxue);n);now_no=now_no+1;sort();轴潼晴茏是否继续输入?(Y/N);fflush(stdin);ch=getch();system(cls);s

33、ystem(color0f);while(ch!='n'&&ch!='N');voidfind()intn;intc=0;ttt1.按姓名查询ntttt2.按学号查询ntttt3.退出n);ttt选择(1/2/3):);fflush(stdin);scanf(%d,&n);switch(n)(case1:system(cls);system(color8f);find1();break;case2:system(cls);system(color2f);find2();break;case3:system(cls);system(colo

34、r3f);menu();default:system(cls);find();voidfind1()/*查询成绩*/(inti;charstr20,as;do(轴潼晴茏姓名:);fflush(stdin);gets(str);for(i=0;i<now_no;i+)(if(!strcmp(,str)(学号tt姓名t数学t英语t语文t物理t化学t总分n);%dt%st%.dt%.dt%.dt%.dt%.dt%.dn,stui.no,,stui.shuxue,stui.yingyu,stui.yuwen,stui.wuli,stui.huaxue,stui

35、.sum);tt按任意键返回主菜单);fflush(stdin);as=getch();system(cls);while(!as);system(cls);system(color4f);)voidfind2()(unsignedlonginum;inti;轴潼晴茏学号:);fflush(stdin);scanf(%d,&inum);for(i=0;i<now_no;i+)(if(stui.no=inum)(学号tt姓名t数学t英语t语文t物理t化学t总分n);%dt%st%.dt%.dt%.dt%.dt%.dt%.dn,stui.no,,stui.shuxu

36、e,stui.yingyu,stui.yuwen,stui.wuli,stui.huaxue,stui.sum);)else(轴潼晴茏该学生不存在,请您确认输入无误!aaan);)system(pause);system(cls);)voiddel_file()(intn;intc=0;ttt1.删除默认存储文件ntttt2.删除自定义存储文件ntttt3.退出n);ttt选择(1/2/3):);fflush(stdin);scanf(%d,&n);switch(n)(case1:system(cls);system(color8f);del_file1();break;case2:s

37、ystem(cls);system(color2f);del_file2();break;case3:system(cls);system(color3f);menu();default:system(cls);del_file();voiddel_file1()FILE*fp;charfilepath20;fp=fopen(H2401.xls,w);fclose(fp);system(cls);return;voiddel_file2()FILE*fp;charfilepath20;轴潼晴茏输入要删除的文件路径:);fflush(stdin);gets(filepath);if(fp=fop

38、en(filepath,)=NULL)printf(a找不到%s文件!请确认文件路彳输入无误!an,filepath);system(pause);system(cls);return;elsefp=fopen(filepath,w);fclose(fp);轴潼晴茏保存的在文件$中的所有信息已经删除!n,filepath);system(pause);system(cls);system(color7f);voidsave()(intn;intc=0;n);退出ntttt3.自定义存储文件ntttt2.保存到默认存储文件ttt1.ttt选择(1/2/3):);fflush(stdin);sca

39、nf(%d,&n);switch(n)(case1:system(cls);system(color8f);save1();break;case2:system(cls);system(color2f);save2();break;case3:system(cls);system(color3f);menu();voidsave1()(FILE*fp=fopen(H2401.xls,w);inti;charfilepath20;for(i=0;i<now_no;i+)(stui.sum=stui.shuxue+stui.yingyu+stui.yuwen+stui.wuli+st

40、ui.huaxue;%dt%st%.dt%.dt%.dt%.dt%.dt%.dn,stui.no,,stui.shuxue,stui.yingyu,stui.yuwen,stui.wuli,stui.huaxue,stui.sum);fclose(fp);system(cls);system(color3f);voidsave2()FILE*fp;inti;charfilepath20;轴潼晴茏另存为(文件保存路径):);fflush(stdin);gets(filepath);if(fp=fopen(filepath,w)=NULL)(保存失败!);return;for(i

41、=0;i<now_no;i+)(stui.sum=stui.shuxue+stui.yingyu+stui.yuwen+stui.wuli+stui.huaxue;%dt%st%.dt%.dt%.dt%.dt%.dt%.dn,stui.no,,stui.shuxue,stui.yingyu,stui.yuwen,stui.wuli,stui.huaxue,stui.sum);fclose(fp);轴潼晴茏学生信息已保存在%s中!n,filepath);system(pause);system(cls);system(color3f);voidremove()(intn;

42、intc=0;ttt1.删除默认存储文件ntttt2.删除指定文件ntttt3.退出n);ttt选择(1/2/3):);fflush(stdin);scanf(%d,&n);switch(n)(case1:system(cls);system(color8f);remove1();break;case2:system(cls);system(color2f);remove2();break;case3:system(cls);system(color3f);menu();default:system(cls);remove();)voidremove1()(if(remove(H2401.xls)(轴潼晴茏删除失败!n,H2401.xls);system(pause);system(cls);remove();)else(轴潼晴茏删除成功!);system(pause);system(cls);remove();)voidremove2()(ch

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论