2022年c++大作业学生信息管理系统源代码 .pdf

上传人:C****o 文档编号:39674460 上传时间:2022-09-07 格式:PDF 页数:17 大小:102.58KB
返回 下载 相关 举报
2022年c++大作业学生信息管理系统源代码 .pdf_第1页
第1页 / 共17页
2022年c++大作业学生信息管理系统源代码 .pdf_第2页
第2页 / 共17页
点击查看更多>>
资源描述

《2022年c++大作业学生信息管理系统源代码 .pdf》由会员分享,可在线阅读,更多相关《2022年c++大作业学生信息管理系统源代码 .pdf(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、学生信息管理系统源代码:#include#include#include#include#include#include struct student char num30;int maths;char name30;int chinese;char clas30;int english;int total;float average;student*next;/1(1)void createlist(student*&head)/学生成绩文件导入功能(用链表储存)char t80,num030,name030,clas030;int chinese0,maths0,english0;stud

2、ent*s,*p;ifstream instuf(student-score.txt,ios:in);if(!instuf)cerrfile could not be open.num0name0clas0chinese0maths0english0)s=new student;strcpy(s-num,num0);strcpy(s-name,name0);strcpy(s-clas,clas0);s-chinese=chinese0;s-maths=maths0;s-english=english0;s-total=s-chinese+s-maths+s-english;s-average=

3、float(s-total)/3;if(head=NULL)head=s;else p-next=s;p=s;p-next=NULL;instuf.close();名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 17 页 -/1(2)void showlist(student*head)/学生成绩信息显示功能(遍历链表)int n=1;cout学号姓名班级语文数学英语总分均分序号;while(head)coutnum nametclast chineset mathstenglishttotaltsetprecision(3)averaget nnext;/2 void char

4、u(student*head)/学生成绩信息插入功能(链表尾部插入学生成绩信息)student*s,*p,*q;int n,i;coutn;cout请输入需插入的学生成绩信息(每人一行):endl;cout学号姓名班级语文数学英语next;for(i=1;is-nums-names-class-chineses-mathss-english;s-total=s-chinese+s-maths+s-english;s-average=float(s-total)/3;q-next=s;q=s;q-next=NULL;名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 17 页 -/3

5、void shanchu(student*&head)/学生成绩信息删除功能 student*p,*q;char a30;int n,i,b=1;coutn;cout请输入需要删除的学生的学号或姓名:endl;for(i=1;ia;if(strcmp(head-num,a)=0)|(strcmp(head-name,a)=0)b=0;p=head;head=head-next;delete p;p=NULL;else p=head;while(p-next!=NULL)&(strcmp(p-next-num,a)!=0)&(strcmp(p-next-name,a)!=0)p=p-next;i

6、f(p-next!=NULL)b=0;q=p-next;p-next=q-next;delete q;q=NULL;if(b=1)cout无此学号或姓名的成绩记录!endl;/4 void change(student*head)/学生成绩信息的修改功能(修改指定学生信息)名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 17 页 -char a30;int b=1;couta;while(head)if(strcmp(head-num,a)=0)|(strcmp(head-name,a)=0)coutendl;b=0;cout此学生原来的学生成绩信息是:endl;cout学号姓名

7、班级语文数学英语 endl;coutnum nametclast chinesetmathstenglishendl;cout请输入修改后的学生成绩信息:endl;cout学号姓名班级语文数学英语 head-numhead-namehead-clashead-chinesehead-mathshead-english;head-total=head-chinese+head-maths+head-english;head-average=float(head-total)/3;head=head-next;if(b=1)cout无此学号或姓名的成绩记录!endl;/5(1)void geren

8、(student*head)/查询个人成绩功能 char a30;int b=1;couta;cout此学生的学生成绩信息是:endl;cout学号姓名班级语文数学英语总分均分num,a)=0)|(strcmp(head-name,a)=0)b=0;coutnum nametclast chineset mathstenglishttotaltsetprecision(3)averagenext;名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 17 页 -if(b=1)cout无此学号或姓名的成绩记录!endl;/5(2)void chabanji(student*head)/查

9、询班级成绩功能 char a30;int b=1;couta;cout此班级的学生成绩信息是:endl;cout学号姓名班级语文数学英语总分均分clas,a)=0)b=0;coutnum nametclast chineset mathstenglishttotaltsetprecision(3)averagenext;if(b=1)cout无此班级的成绩记录!endl;/5(3)void chayuwen(student*head)/查询语文成绩功能 int h,l,b=1;cout请输入您要查询的【语文】成绩的分数段:endl;cout起始分终止分 l;cinh;cout此分数段的学生语文

10、成绩信息是:endl;cout学号姓名班级语文数学英语总分均分chinese=l)&(head-chinese=h)b=0;coutnum nametclast chineset mathstenglishttotaltsetprecision(3)averagenext;if(b=1)cout无此分数段的语文成绩记录!endl;/5(4)void chashuxue(student*head)/查询数学成绩功能 int h,l,b=1;cout请输入您要查询的【数学】成绩的分数段:endl;cout起始分终止分 l;cinh;cout此分数段的学生数学成绩信息是:endl;cout学号姓名班

11、级语文数学英语总分均分maths=l)&(head-maths=h)b=0;coutnum nametclast chineset mathstenglishttotaltsetprecision(3)averagenext;if(b=1)cout无此分数段的数学成绩记录!endl;/5(5)void chayingyu(student*head)/查询英语成绩功能 int h,l,b=1;cout请输入您要查询的【英语】成绩的分数段:endl;cout起始分终止分 l;cinh;cout此分数段的学生英语成绩信息是:endl;cout学号姓名班级语文数学英语总分均分english=l)&(h

12、ead-english=h)b=0;coutnum nametclast chineset 名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 17 页 -mathstenglishttotaltsetprecision(3)averagenext;if(b=1)cout无此分数段的英语成绩记录!endl;/5(6)void chazongfen(student*head)/查询总分成绩功能 int h,l,b=1;cout请输入您要查询的【总分】成绩的分数段:endl;cout起始分终止分 l;cinh;cout此分数段的学生总分成绩信息是:endl;cout学号姓名班级语文数学英

13、语总分均分total=l)&(head-total=h)b=0;coutnum nametclast chineset mathstenglishttotaltsetprecision(3)averagenext;if(b=1)cout无此分数段的总分成绩记录!next;while(q)名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 17 页 -if(p-chinesechinese)strcpy(a,p-num);strcpy(p-num,q-num);strcpy(q-num,a);strcpy(a,p-name);strcpy(p-name,q-name);strcpy(q

14、-name,a);strcpy(a,p-clas);strcpy(p-clas,q-clas);strcpy(q-clas,a);b=p-chinese;p-chinese=q-chinese;q-chinese=b;b=p-maths;p-maths=q-maths;q-maths=b;b=p-english;p-english=q-english;q-english=b;b=p-total;p-total=q-total;q-total=b;c=p-average;p-average=q-average;q-average=c;q=q-next;p=p-next;/6(2)void shu

15、xue(student*head)/按数学成绩从高到低排序功能 student*p,*q;char a30;int b;float c;p=head;while(p)q=p-next;while(q)if(p-mathsmaths)strcpy(a,p-num);strcpy(p-num,q-num);strcpy(q-num,a);strcpy(a,p-name);strcpy(p-name,q-name);strcpy(q-name,a);strcpy(a,p-clas);strcpy(p-clas,q-clas);strcpy(q-clas,a);b=p-chinese;p-chines

16、e=q-chinese;q-chinese=b;b=p-maths;p-maths=q-maths;q-maths=b;b=p-english;p-english=q-english;q-english=b;b=p-total;p-total=q-total;q-total=b;c=p-average;p-average=q-average;q-average=c;q=q-next;名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 17 页 -p=p-next;/6(3)void yingyu(student*head)/按英语成绩从高到低排序功能 student*p,*q;cha

17、r a30;int b;float c;p=head;while(p)q=p-next;while(q)if(p-englishenglish)strcpy(a,p-num);strcpy(p-num,q-num);strcpy(q-num,a);strcpy(a,p-name);strcpy(p-name,q-name);strcpy(q-name,a);strcpy(a,p-clas);strcpy(p-clas,q-clas);strcpy(q-clas,a);b=p-chinese;p-chinese=q-chinese;q-chinese=b;b=p-maths;p-maths=q-

18、maths;q-maths=b;b=p-english;p-english=q-english;q-english=b;b=p-total;p-total=q-total;q-total=b;c=p-average;p-average=q-average;q-average=c;q=q-next;p=p-next;/6(4)void zongfen(student*head)/按总分成绩从高到低排序功能 student*p,*q;char a30;int b;float c;p=head;名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 17 页 -while(p)q=p-next

19、;while(q)if(p-totaltotal)strcpy(a,p-num);strcpy(p-num,q-num);strcpy(q-num,a);strcpy(a,p-name);strcpy(p-name,q-name);strcpy(q-name,a);strcpy(a,p-clas);strcpy(p-clas,q-clas);strcpy(q-clas,a);b=p-chinese;p-chinese=q-chinese;q-chinese=b;b=p-maths;p-maths=q-maths;q-maths=b;b=p-english;p-english=q-english

20、;q-english=b;b=p-total;p-total=q-total;q-total=b;c=p-average;p-average=q-average;q-average=c;q=q-next;p=p-next;/7 void xuehao(student*head)/按学号从小到大排序功能 student*p,*q;char a30;int b;float c;p=head;while(p)q=p-next;while(q)if(strcmp(p-num,q-num)0)strcpy(a,p-num);strcpy(p-num,q-num);strcpy(q-num,a);strc

21、py(a,p-name);strcpy(p-name,q-name);strcpy(q-name,a);strcpy(a,p-clas);strcpy(p-clas,q-clas);strcpy(q-clas,a);b=p-chinese;p-chinese=q-chinese;q-chinese=b;b=p-maths;p-maths=q-maths;q-maths=b;b=p-english;p-english=q-english;q-english=b;名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 17 页 -b=p-total;p-total=q-total;q-to

22、tal=b;c=p-average;p-average=q-average;q-average=c;q=q-next;p=p-next;/8 void xingming(student*head)/按姓名首字母排序功能 student*p,*q;char a30;int b;float c;p=head;while(p)q=p-next;while(q)if(strcmp(p-name,q-name)0)strcpy(a,p-num);strcpy(p-num,q-num);strcpy(q-num,a);strcpy(a,p-name);strcpy(p-name,q-name);strcp

23、y(q-name,a);strcpy(a,p-clas);strcpy(p-clas,q-clas);strcpy(q-clas,a);b=p-chinese;p-chinese=q-chinese;q-chinese=b;b=p-maths;p-maths=q-maths;q-maths=b;b=p-english;p-english=q-english;q-english=b;b=p-total;p-total=q-total;q-total=b;c=p-average;p-average=q-average;q-average=c;q=q-next;p=p-next;/9 void ba

24、nji(student*head)/按班级的类别排序功能 名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 17 页 -student*p,*q;char a30;int b;float c;p=head;while(p)q=p-next;while(q)if(strcmp(p-clas,q-clas)0)strcpy(a,p-num);strcpy(p-num,q-num);strcpy(q-num,a);strcpy(a,p-name);strcpy(p-name,q-name);strcpy(q-name,a);strcpy(a,p-clas);strcpy(p-clas,

25、q-clas);strcpy(q-clas,a);b=p-chinese;p-chinese=q-chinese;q-chinese=b;b=p-maths;p-maths=q-maths;q-maths=b;b=p-english;p-english=q-english;q-english=b;b=p-total;p-total=q-total;q-total=b;c=p-average;p-average=q-average;q-average=c;q=q-next;p=p-next;/10 void show(student*head,char*s)/学生成绩信息文件导出功能 int n

26、=1;ofstream outstuf;outstuf.open(s,ios:out);if(!outstuf)cerrfile could not be open.endl;abort();outstuf 学号姓名班级语文数学英语总分均分序号 endl;while(head)outstufnum nametclast chineset mathstenglishttotalt setprecision(3)averaget nnext;名师资料总结-精品资料欢迎下载-名师精心整理-第 12 页,共 17 页 -outstuf.close();void main()student*head=N

27、ULL;int n;char s30;cout*;cout*欢迎使用学生成绩管理系统*;cout*管理员:*;cout*请选择您想使用的功能:*;cout*功能名请输入功能名请输入*;cout*导入学生成绩文件1 按学号小到大排序7*;cout*插入学生成绩信息2 按姓名首字母排序8*;cout*删除学生成绩信息3 按班级的类别排序9*;cout*修改学生成绩信息4 导出学生成绩文件10*;cout*查询学生成绩信息5 其它功能.*;cout*按成绩高到低排序6 退出管理系统0*;cout*;coutn;createlist(head);while(n0)switch(n)case 1:cou

28、t导入的需管理的学生成绩信息表:endl;showlist(head);break;case 2:charu(head);cout插入后的学生成绩信息表:endl;showlist(head);break;case 3:shanchu(head);cout删除后的学生成绩信息表:endl;showlist(head);break;名师资料总结-精品资料欢迎下载-名师精心整理-第 13 页,共 17 页 -case 4:change(head);cout修改后的学生成绩信息表:endl;showlist(head);break;case 5:cout请选择查询学生成绩的方式:endl;cout

29、方式请输入方式请输入endl;cout 查询个人成绩1 查询数学成绩4 endl;cout 查询班级成绩2 查询英语成绩5 endl;cout 查询语文成绩3 查询总分成绩6 endl;coutn;switch(n)case 1:geren(head);break;case 2:zongfen(head);chabanji(head);break;case 3:yuwen(head);chayuwen(head);break;case 4:shuxue(head);chashuxue(head);break;case 5:yingyu(head);chayingyu(head);break;c

30、ase 6:zongfen(head);chazongfen(head);break;break;case 6:cout请选择需排序的成绩的类型:endl;cout 类型请输入类型请输入endl;cout 按语文成绩排序1 按英语成绩排序3 endl;cout 按数学成绩排序2 按总分成绩排序4 endl;coutn;switch(n)case 1:yuwen(head);cout按【语文】成绩排序后的学生成绩信息表:endl;名师资料总结-精品资料欢迎下载-名师精心整理-第 14 页,共 17 页 -showlist(head);break;case 2:shuxue(head);cout按

31、【数学】成绩排序后的学生成绩信息表:endl;showlist(head);break;case 3:yingyu(head);cout按【英语】成绩排序后的学生成绩信息表:endl;showlist(head);break;case 4:zongfen(head);cout按【总分】成绩排序后的学生成绩信息表:endl;showlist(head);break;break;case 7:xuehao(head);cout按【学号】从小到大排序后的学生成绩信息表:endl;showlist(head);break;case 8:xingming(head);cout按【姓名】首字母排序后的学生

32、成绩信息表:endl;showlist(head);break;case 9:banji(head);cout按【班级】的类别排序后的学生成绩信息表:endl;showlist(head);break;case 10:cout请选择需导出的学生成绩数据文件的内容:endl;cout 内容请输入内容请输入;cout 按总分成绩排序的成绩表1 按姓名首字母排序的成绩表3;cout 按学号大小排序的成绩表2 按班级分类别排序的成绩表4;coutn;switch(n)case 1:zongfen(head);cout 按【总分】成绩排序的成绩表已导出endl;cout 在生成的total-sort.t

33、xt 文件中 endl;cout 请注意查看!endl;名师资料总结-精品资料欢迎下载-名师精心整理-第 15 页,共 17 页 -strcpy(s,total-sort.txt);show(head,s);break;case 2:xuehao(head);cout 按【学号】大小排序的成绩表已导出endl;cout 在生成的number-sort.txt 文件中 endl;cout 请注意查看!endl;strcpy(s,number-sort.txt);show(head,s);break;case 3:xingming(head);cout 按【姓名】首字母排序的成绩表已导出endl;

34、cout 在生成的name-sort.txt 文件中 endl;cout 请注意查看!endl;strcpy(s,name-sort.txt);show(head,s);break;case 4:banji(head);cout 按【班级】分类排序的成绩表已导出endl;cout 在生成的class-sort.txt 文件中 endl;cout 请注意查看!endl;strcpy(s,class-sort.txt);show(head,s);break;break;cout继续操作请按回车键!endl;cgets(s);coutendlendlendl;cout*;cout*欢迎使用学生成绩管

35、理系统*;cout*管理员:*;cout*请选择您想使用的功能:*;cout*功能名请输入功能名请输入*;cout*导入学生成绩文件1 按学号小到大排序7*;cout*插入学生成绩信息2 按姓名首字母排序8*;cout*删除学生成绩信息3 按班级的类别排序9*;cout*修改学生成绩信息4 导出学生成绩文件10*;cout*查询学生成绩信息5 其它功能.*;cout*按成绩高到低排序6 退出管理系统0*;cout*;coutn;coutendl 您所使用的功能已完成,谢谢使用!endl;cout 欢迎再次使用!endlendl;名师资料总结-精品资料欢迎下载-名师精心整理-第 17 页,共 17 页 -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁