




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、淮海 工学院 计算机工程学院课程设计报告设计名称:数据结构课程设计选题名称:学生成绩管理系统系(院):计算机工程学院设计时间: 2013.12.232013.1.5设计地点:软件工程实验室、教室指导教师评语:签名:年 月 日数据结构课程设计报告第 13 页,共 页1 .课程设计目的, 一*!加*, 一*!加*,一*!) 1:*,0*,加*,加*:,* ,!一加*:,*,:一加:一I1、训练学生灵活应用所学数据结构知识,独立完成问题分析,结合数据结构理论知识,编写程 序求解指定问题。2 .初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;3 .提高综合运用所学的理论知识和
2、方法独立分析和解决问题的能力;4 .训练用系统的观点和软件开发一般规范进行软件开发,巩固、深化学生的理论知识,提高编程水平,并在此过程中培养他们严谨的科学态度和良好的工作作风。2 .课程设计任务与要求:任务根据教材数据结构-C语言描述(耿国华主编)和参考书数据结构题集(C语言版)(严蔚敏、吴伟民主编)选择课程设计题目,要求通过设计,在数据结构的逻辑特性和物理表示、数据结构 的选择应用、算法的设计及其实现等方面加深对课程基本内容的理解和综合运用。设计题目从任务书所列选题表中选取,每班每题不得超过2人。学生自选课题学生原则上可以结合个人爱好自选课题,要求课题有一定的深度与难度,有一定的算法复杂性,
3、能够巩固数据结构课程所学的知识。学生自选课题需在18周前报课程设计指导教师批准方可生效。要求:1、在处理每个题目时,要求从分析题目的需求入手,按设计抽象数据类型、构思算法、通过设计实现抽象数据类型、编制上机程序和上机调试等若干步骤完成题目,最终写出完整的分析报告。前期准备工作完备与否直接影响到后序上机调试工作的效率。在程序设计阶段应尽量利用已有的标准函数,加大代码的重用率。2、 .设计的题目要求达到一定工作量(300行以上代码),并具有一定的深度和难度。3、程序设计语言推荐使用 C/C+,程序书写规范,源程序需加必要的注释;4、每位同学需提交可独立运行的程序;5、每位同学需独立提交设计报告书(
4、每人一份),要求编排格式统一、规范、内容充实,不少于10页(代码不算);6、课程设计实践作为培养学生动手能力的一种手段,单独考核。3 .课程设计说明书¥ 一 !»E rT (1 L» ! n 1*” HT n IK HW 1一需求分析该程序是模拟成绩管理系统,实现对学生成绩的录入,修改,插入,查询,删除,排序,统计等基本 功能,本程序有以下规定:1 .管理员可以进行学生信息的录入,包括姓名,学号,班级,性别,各科成绩等信息2 .管理员和学生都可以进行成绩的查询(通过姓名,学号进行查询)3 .管理员还可以对学生信息进行管理(修改(整个或者单个记录项进行修改),插入(
5、在已有的信息下进行有顺序的插入),删除(将整个记录删除),排序(按各科成绩高低进行排序,或者按 姓名进行排序,或者是按学号进行排序),统计(各个学科的最高分,最低分,及格率)。二概要设计系统用到的抽象数据类型定义:ADT LinearList数据元素:D=a i|ai Do,i=1,2,,n,n 0为短一数据对象关系:S=<ai,ai+i>|a,a+i e Do,i=1,2,-in基本操作:Locate (L , e)DestroyList (L)ClearList (L)GetData ( L,i)InsList ( L,i , e)DelList ( L,i , &e)
6、ADT LinearList系统中的子程序和功能说明:fprint(StudentList *st)保存到文件StudentList *create(StudentList *st,int n)Createseq(StudentList *st)录入学生信息Amst(StudentList *st, char name口)修改学生信息Insertst (StudentList *st )插入学生信息Deletest(StudentList *st,StudentType *e)删除学生信息Search(StudentList *st,char n20)学生信息查询系统Sort(StudentL
7、ist *st,char sc20)学生信息排序系统Jige(StudentList st,char subnum20) 统计学科及格率Bestscore(StudentList st,char subnum)统计学科最高分Leastscore (StudentList st, char subnum口)统计学科最低分Menu ()主菜单menu(StudentList *st)小菜单main ()主函数功能实现过程void Createseq(StudentList *st)录入学生信息输入学生的个数;输入学生信息项的个数;输入学生信息项的表头;for(j=1;j<=len;j+)输入
8、表头信息;依次录入学生信息:for(i=1;i<=a;i+)for(j=1;j<=学生信息项的个数;j+)输入学生信息;是否保存信息(输入1或者2):输入选择;if (选择为1)调用保存函数;if (选择为2)输出未保存;输出学生信息;void Amst(StudentList *st, char name口)修改学生信息for(i=1;i<=len;i+)if(输入的修改名字和记录中的学生的名字相同)找到该学生的位置;输入你要修改的该学生记录项;for(j=1;j<=a;j+)找到该记录项;输入修改后的信息;显示修改的学生的信息;int Deletest(Studen
9、tList *st,StudentType *e)删除学生信息输入删除的位置;if(删除的位置不在范围内)输出删除的位置不合法;找到该位置进行删除;输出删除后全部学生信息;int Search(StudentList *st,char n20)查询学生信息for(int i=1;i<=st->length;i+)for(j=1;j<=st->stunum;j+)if(学生某个信息与记录项相同)找到该位置;输出查找到的学生的信息;否则的话输出你查找的学生不存在;int Sort(StudentList *st,char sc20)对学生信息排序for(j=1;j<=
10、st->stunum;j+)找到要进行排序的那一列;进行该列排序洪冒泡排序*/输出排序结果;void Jige(StudentList st,char subnum20)统计学科及格率for(j=1;j<=st->stunum;j+)找到要统计的成绩的那一列;for(int i=1;i<=n;i+)if (分数大于等于六十)a+;求出及格率;输出该学科的及格率;系统程序功能流程图丁成绩管理系统信息录入信息管理信息查找功能实现过程三详细设计void Createseq(StudentList *st)录入学生信息int k;int i;int len;学生的个数int a
11、;学生信息项的个数int j;printf("输入学生的个数:");scanf("%d",&len);st->length=len;printf("输入学生信息项的个数:");scanf("%d",&a);st->stunum=a;printf("输入学生信息项的表头:"力for(j=1;j<=a;j+)scanf("%s",&st->r0.dataj);printf("依次录入学生信息:n");for(i=
12、1;i<=len;i+)for(j=1;j<=a;j+)scanf("%s",&st->ri.dataj);printf("是否保存信息(输入1或者2):");scanf("%d",&k);if(k=1)fprint(st);printf("保存成功!!");if(k=2)printf("未保存!");printf("输出学生信息:n");for(j=1;j<=a;j+)printf("%st",st->r0.
13、dataj);printf("n");for(i=1;i<=len;i+)for(j=1;j<=a;j+)printf("%st",st->ri.dataj);printf("n");void Amst(StudentList *st, char name口)修改学生信息int i,j;int len=st->length;int a=st->stunum;int k,p;char str20; 修改的项目char ne20;for(i=1;i<=len;i+)if(strcmp(st->ri
14、.data1,name)=0) p=i;for(i=0;i<=len;i+)for(j=1;j<=a;j+)printf("%st",st->ri.dataj);printf("n");printf("输入你要修改的学生信息项目:scanf("%s",&str);for(j=1;j<=a;j+)if(strcmp(st->r0.dataj,str)=0) k=j;printf("n输入修改信息:");scanf("%s",&ne);strc
15、py(st->rp.datak,ne);printf("n修改的学生信息为:n");for(j=1;j<=a;j+)printf("%st",st->r0.dataj);printf("%st",st->rp.dataj);int Deletest(StudentList *st,StudentType *e)int i;printf("n输入你要删除的位置:");scanf("%d",&i);if(i<1)ll(i>st->length)pri
16、ntf("删除的位置不合法!!"); return(ERROR);*e=st->ri;for(int k=i;k<=st->length;k+)st->rk=st->rk+1;");删除学生信息st->length-;for(int p=0;p<=st->length;p+)for(int j=1产st->stunum;j+)printf("%st",st->r0.dataj);printf("%st",st->rp.dataj);printf("n
17、");return(OK);int Search(StudentList *st,char n20) 查找int a=0;int r;int k;int j;for(int i=1;i<=st->length;i+)for(j=1;j<=st->stunum;j+)if(strcmp(st->ri.dataj,n)=0)k=i;r=j;a=1;if(a=1)printf("n查找的学生信息为:n");for(j=1;j<=st->stunum;j+)printf("%st",st->rk.data
18、j);else if(a=0)printf("你查找的学生不存在!!"); return(OK);int Sort(StudentList *st,char sc20) / 冒泡排序StudentType x;int j,i;int p;int n;for(j=1;j<=st->stunum;j+)if(strcmp(st->r0.dataj,sc)=0) P=j;n=st->length;int change=1;for(i=1;i<=n-1&&change;i+)change=0;for(int k=1;k<=n-i;
19、k+)if(strcmp(st->rk.datap,st->rk+1.datap)>0)x=st->rk;st->rk=st->rk+1;st->rk+1=x; change=1;for(i=1;i<=st->length;i+)for(j=1产st->stunum;j+) printf("%st",st->ri.datajD;printf("n");return(OK);void Jige(StudentList st,char subnum20) 统计学科及格率 char b10=&q
20、uot;60"double s;int a=0;int p;int n=st.length;for(int j=1;j<=st.stunum;j+)if(strcmp(st.r0.dataj,subnum)=0) p=j;for(int i=1;i<=n;i+)if(strcmp(st.ri.datap,b)>=0)a+;s=(a*(1.0)/(n*1.0);printf("%s 的学将反格孝为 %f",st.r0.datap,s);四设计与调试分析1 .这个程序采用一个结构体:学生信息结构体。采用的是顺序表的存储结构,顺序表的长度表示学生的个数
21、。每个数组里面还有一个二维数组,表示每个学生含有的数据项。2 .由于前期工作考虑的不是很周全,采用了顺序表,这对于实现程序的插入和删除的功能显然效率不是很高3 .由于先前成绩定义成了字符型,所以对于成绩的比大小有些麻烦。我对于字符型转化成数字进行加减不是很清楚,所以在实现统计功能中并没有包括成绩的总分计算以及平均分的计算,这是该系统的漏洞。五用户手册【使用说明】1 .进入学生成绩管理系统主页面2 .根据身份的不同进入不同的系统界面(如果是管理员则进入含有五个子系统选择的界面,而学生 则只可以进入查询学生信息的界面)3 .如果要录入学生的信息,则选择 1,可以人工的控制要输入的学生个数以及每个学
22、生含有的记录 项,注意输完了保存进文件4 .如果要对学生进行管理,就选择 2,将进入对学生管理的三项选择界面。如果要修改学生信息, 选才i 1,输入要修改的学生的名字,找到该学生并输入要修改的学生的记录项,进行修改。如果 要插入学生信息,选择2,选择插入的位置,当你插入的位置不合法时,会有提示。如果要删除学生信息,输入你要删除的学生的位置,如果没该学生则删除不合法。5 .如果要查找学生信息,则选择 3,输入你要查找的学生的姓名或者学号,如果没有该学生就提示 你查找的学生不存在。有该学生就会输出该学生的所以信息。6 .如果要对学生信息进行排序,就选择4,输入你要进行排序的学生的记录项,它就会将该
23、记录项把学生信息进行升序排列7 .如果要对学生信息进行统计,就选择5.如果要对学科成绩进行最高分统计,就选择 1,然后输入你要统计的学科名,系统会找出该学科的最高分。如果要对学科成绩进行及格率的统计,则选择 2,输入你要统计的学科名,系统会算出该学科的及格率。如果要对学科成绩进行最低分统计, 则选择3,输入你要统计的学科名,系统会找出该学科的最低分。8 .如果系统结束,则按 6结束。【程序中的头文件】#include<stdio.h>#include<stdlib.h>#include<string.h>#include<fstream.h>#d
24、efine ERROR 0#define OK 1#define MAXsize 20#define LIST_SIZE 100/ 线性表长度typedef char KeyType;FILE *fp;/*定义全局变量*/六测试成果1 .录入学生信息生星请输入你的身份:提示:管理员为0,数§578强高67赃79507生学的100±的箸女士成第; 1,丸12121212- 息功 一 信珈 生支距丫儿r9 S8 707071 H仿生生生入2121 拿学学录11入人次耨丫儿否 -L=> /.、- -eq 19 a甲-1量 号 4£ 序.一的的息 的强预与信 T?年
25、小目3白3生 园©1于7 M6 M-9 U0 19车5 X 3E £31 -SJ. 2七1保录对杳*123息理f 8 7在仃立仃一的息盲M息,4干圾£由2 .插入学生信息"MX MiJOtyHfrMHUfrUt-atMM梵 M案Hat *射 餐 MK MMMM M清mJ g) 理*片火*M-M-MWlC-M注聋U*»1:豪我=j入序号二*1二 二 二 二 二胃息进进息心息号学09inI数据结构897«nt 万千拨式市 一录对杳gg教 高需生息息息ffls岸回15r生生黑人除蠹1 构 你马12M7B结入京口 名耨3.修改学生f Aif
26、圣*箕*类*崎穗著麓*昔科安/*有事碑赭有苒斌*X XH HMW* XX箕M M: AXH肯M _r t_r u _r xj蓦耳 MM-范礼麟注:最箴券谕入修改存息、,79数据浩构2010例及 工2工学号 03高数 KKiMiCiMMM KMKJt M 违碑真”*MN TCWOTlOf看萧看料中中若科隆NX*中茂* 1 "C:LI 5«rsAd m ini stra torSDe 5 kto pDeb ucValIS i$texe"录对杳_*1-, 】一 -0 8 9 9 rm 8 7 8 SEL.10蜘01阴生8 6U。7 5?1111 要班1212121212
27、修你 要 人 你白球芝k避HHJHH生系安食千盘或由鳖昼 但;j1I伯 量孽 力於除 请打2.3.I数89 -.数 省品 姓 的 生号 改丫儿工 输I廛小W马二翼廖改的学生信息为 菊L .数据结构课程设计报告第15页,共 页4.删除学生信息MMKMMMMMMMMMMKMY H Y T' H *FT Y L Y rT 1 10* T 尸 T TT TMMKMKMKWKM41tMiMH< IKHiE *帏 M M 舞 MMMMM*MNM MX :M * * M XMX前入序号:高效ES 93GS 54姜健已理好里代students_lis t txt 中!2&L&录对
28、杳1 2 3 4 5 67 4 08 5 7M:舞展MiK AMMM WT WtXIX WM狂注*Jf XX XX HUM力息息B. 口 F J J , 生痘痘信- SHSSHS 选罡辜 居於除 fe_H* -你入名差+ten号一学1061呢的数揖结构5S5.对学生信息排序(1)学号排序 : *C;' U sersd m i ii st rate n Des ktopD ebe kp '1 0 1 回”薜,*1<*魏薜鳌iMMMMMMX,薜3<梵:M,XMJIJCNXJCXJCMJCMM:M 有舞 M ABCM,拜利XMW*»EAK:MMM iCMrMJf
29、 W MM*蕤X HM MM- MM M WMWMWM-WM MM M录对杳! 1 2 3 4 5 &靠进 也的息息 £*感叁本生系行KX MXMJt MWX XXXKM MXMH M:违XMEWtXltltSWMSatfMfcf请输空孙邓算择SI工1工 选按12K1 212 你要人侪®A8±®夕号条:北-9 6 5-6 序; Fr(2) 姓名排序数据结构课程设计报告第 21 页,共 页MME KM M KM M MM M MMMM MMMWMMMMHMM柳 萧蠲 带黄 野莺 弊 青科 蕾 M*=,M第苴MX 苴 M HX Jf M:M二姓不65
30、996554录对查12 3 4 5 6卷秀香市籍童息进进的i.1411 管a 生星信w请柳SIS评:4用牛剌10胤配配的什择照1工-1 1 选按12121212 17要(3)成绩排序录对查 1 2 3 4 5 6火华地聿*一息理E普二L交仃- 乐童息进进 理的皇心息6.查找学生(1)学号查找“C; U sersAd miii strato rDe s ktopD eb u 或成活管是至练 exe'*口*胃鼻瞳声电计首辞Ji M Ji Ji TM EX nxEM-X /穴 看找的学生信息为:12110?91«W是对直 B B _) 12 3 4 5 6否运回主菜单?是Y不是N.
31、86就毒息进进 理的息意 擎星11!译 i 亍亍 4 12M- IWM MK W* KTt =*w *xkxE* N史W曲的人查找的序号门名者学号的2010(2)姓名查找MM% ME MH 魏肾,:MWBEWXJf9或叁HHW系生拿墓由鳖矗息瞿 理的息lnl心息 造生厘信”.亶照勰曙界号林查找的学生信息为:12101,二 _M:M y XWMEiMiCiMM* MMMJt M违JKXiCNKM KXM 梵 MWMMHri-M4E-M-Mn*Iff =M: = * * M 胃,党萧首W谪嶂*薛首茂MUX%”MX M-HH.K MM MMKM KM M MH M H H.7.统计(1) 最高分七;
32、U sersAd miiist rate nDe s ktopD eb u /成曲管理率纤,exe,I 0 | 回|C M MX MK M MK M M M M MXKJI!:MM:MM:M.XM.M:MKHXJHM争录对查12 3 4 5 6K硒4进进 现的自心息 暗生星一一 £k师爰重生系?8f行IIOMMIOCJHM MJUKJI MM8MKJCJtMItJCKMMHifMb*EtWKK茁量专选技=<的一入普浦号学选最.SEB(2)及格率契刀1替瓯数,息理8 1 以二丁亍一丁 理的囱一息 旌生星i-N bb日一 L. 66不fc世通 /八睾7 择国,夙零 选按:<科
33、T. 你mJ子回生系录对查(3) 最低分JCJKK KMUX M:胃13I SIM UJ>:MKM MKHMK MMIOCNK KMiKM M,Iai於千乃宜1t HK *It M H M M H J4 H M. M JtM M: M It M3>3X * XiMAMMMMMNMMMMMilWX* *X %X MHKX W*;HH iMUMHiMH,K 制:MM:MW:<XM.M:MKJ<:MJHK>I而 I Ebi录对查F-|_ JM 于jfc.彳 茨的基本信息f餐帔 KXKXMMI盘善行誉显择唐哥委次 选按:<的王你Mt5回立 八京篦山 %金不 E-l?
34、 kGuhnMK.1-I II 回 I8.学生查询'C:Us ersAd min i stratorDesktopD e buexe"敲,露诙精炉面函艇啊彗统*甘赭薜整片着餐片餐餐茶餐青费萧黄黄青萧神悔*X漱'lPffill 杳1谊1宏充M* MX iM *题1*1若1:1*班堇*11注1*正1注 强鎏4翻整孽变更者学号,加"一H尔杳我小+牛小行.H,!Fj*ess Any key to co nt inue-七附录(源程序清单)#include<stdio.h>#include<stdlib.h>#include<string
35、.h>#include<fstream.h>#define ERROR 0#define OK 1#define MAX_size 20#define LIST_SIZE 100/ 线性表长度typedef char KeyType;typedef structKeyType dataMAX_sizeMAX_size;StudentType;typedef struct数据结构课程设计报告第23页,共 页StudentType rLIST_SIZE+1;int length;int stunum;StudentList;FILE *fp;void Menu()学生成绩管理系统
36、 *n");*n,);*n")*n,);*n")*n");*n");printf(''*1.录入学生的基本信息printf("*2.对学生信息进行管理printf("*3.查找学生信息printf("*4.对学生信息进行排序printf(''*5.对学生信息进行统计printf("*6.退出系统printf("n *void fprint(StudentList *st) / 保存到文件 int len=st->length;int a=st->stu
37、num;if(fp=fopen("students_list.txt","wb")尸NULL) printf("File open error!n"); exit(0);for(int i=0;i<=len;i+)fwrite(&st->ri,sizeof(StudentList),1,fp);/*将学生信息写入文件*/fclose(fp);/*关闭文件*/printf("n学生信息已成功保存到文件studentsgetchar();list.txt中! n");StudentList *cre
38、ate(StudentList *st,int n)/ 读出文件if(fp=fopen("students_list.txt","rb")尸NULL) printf("File open error!n");exit(0);for(int i=0;i<=n;i+)fread(&st->ri,sizeof(StudentList),1,fp);fclose(fp);return st;void Createseq(StudentList *st)录入学生信息int k;int i;int len; /学生的个数int
39、 a;学生信息项的个数int j;printf("输入学生的个数:");scanf("%d",&len);st->length=len;printf("输入学生信息项的个数:");scanf("%d",&a);st->stunum=a;printf("输入学生信息项的表头:");for(j=1;j<=a;j+)scanf("%s",&st->r0.dataj);printf("依次录入学生信息:n");for
40、(i=1;i<=len;i+)for(j=1;j<=a;j+)scanf("%s",&st->ri.dataj);printf("是否保存信息(输入1或者2):");scanf("%d",&k);if(k=1)fprint(st);printf("保存成功!!");if(k=2)printf("未保存!");printf("输出学生信息:n");for(j=1;j<=a;j+)printf("%st",st->
41、r0.dataj);printf("n");for(i=1;i<=len;i+)for(j=1;j<=a;j+)printf("%st",st->ri.dataj);printf("n");void Amst(StudentList *st, char name) 修改学生信息数据结构课程设计报告第 26 页,共 页int i,j;int len=st->length;int a=st->stunum;int k,p;char str20;/修改的项目char ne20;for(i=1;i<=len
42、;i+)if(strcmp(st->ri.data1,name)=0) p=i;for(i=0;i<=len;i+)for(j=1;j<=a;j+)printf("%st",st->ri.dataj);printf("n");printf("输入你要修改的学生信息项目:");scanf("%s",&str);for(j=1;j<=a;j+)if(strcmp(st->r0.dataj,str)=0) k=j;printf("n输入修改信息:");sca
43、nf("%s",&ne);strcpy(st->rp.datak,ne);printf("n修改的学生信息为:n");for(j=1;j<=a;j+)printf("%st",st->r0.dataj);printf("%st",st->rp.dataj);int Insertst(StudentList *st)插入学生信息int i;printf("n输入你要插入的位置:");scanf("%d",&i);if(i<1)|(i
44、>st->length+1)printf("插入的位置不合法!!"); return(ERROR);if(st->length>=LIST SIZE)printf("表已满,无法插入");return(ERROR);for(int k=st->length;k>=i;k-)st->rk+1=st->rk;for(int j=1;j<=st->stunum;j+)printf("%s”,st->r0.dataj);scanf("%s",&st->r
45、i.dataj);st->length+;for(int p=0;p<=st->length;p+)for(j=1;j<=st->stunum;j+)printf("%st",st->rp.dataj);printf("n");fprint(st);return(OK);int Deletest(StudentList *st,StudentType *e)/ 删除学生信息 int i;printf("n输入你要删除的位置:");scanf("%d",&i);if(i&l
46、t;1)|(i>st->length)printf("删除的位置不合法!!"); return(ERROR);*e=st->ri;for(int k=i;k<=st->length;k+)st->rk=st->rk+1;st->length-;for(int p=0;p<=st->length;p+)for(int j=1产st->stunum;j+)printf("%st",st->rp.dataj);printf("n");fprint(st);return(
47、OK);int Search(StudentList *st,char n20) 查找 int a=0;int r;int k;int j;for(int i=1;i<=st->length;i+) for(j=1;j<=st->stunum;j+)if(strcmp(st->ri.dataj,n)=0)k=i;r=j;a=1; if(a=1) printf("n查找的学生信息为:n");for(j=1;j<=st->stunum;j+) printf("%st",st->rk.dataj);else if
48、(a=0)printf("你查找的学生不存在!!"); return(OK);int Sort(StudentList *st,char sc20) / 冒泡排序 StudentType x;int j,i;int p;int n;for(j=1;j<=st->stunum;j+)if(strcmp(st->r0.dataj,sc)=0) p=j;n=st->length;int change=1;for(i=1;i<=n-1&&change;i+)change=0;for(int k=1;k<=n-i;k+)数据结构课程
49、设计报告第29页,共 页if(strcmp(st->rk.datap,st->rk+1.datap)>0)x=st->rk;st->rk=st->rk+1;st->rk+1=x;change=1;for(i=1;i<=st->length;i+)for(j=1;j<=st->stunum;j+)printf("%st",st->ri.datajD;printf("n");return(OK);void Jige(StudentList st,char subnum20) 统计学科及格
50、率char b10="60"double s;int a=0;int p;int n=st.length;for(int j=1;j<=st.stunum;j+)if(strcmp(st.r0.dataj,subnum)=0)p=j;for(int i=1;i<=n;i+)if(strcmp(st.ri.datap,b)>=0)a+;s=(a*(1.0)/(n*1.0);printf("%s 的学科及格率为 %f",st.r0.datap,s);void Bestscore(StudentList st,char subnum)统计学科
51、最高分int max=1;int j;int p;int n=st.length;for(j=1;j<=st.stunum;j+)if(strcmp(st.r0.dataj,subnum)=0) P=j;for(int i=1;i<=n;i+) if(strcmp(st.ri.datap,st.rmax.datap)>0) max=i;printf("%s 的学科的最高分为 %s",st.r0.datap,st.rmax.datap);void Leastscore(StudentList st,char subnum)统计学科最低分int min=st.
52、length;int j;int p;int n=st.length;for(j=1;j<=st.stunum;j+) if(strcmp(st.r0.dataj,subnum)=0) p=j;for(int i=1;i<=n;i+) if(strcmp(st.ri.datap,st.rmin.datap)<0) min=i;printf("%s 的学科的最低分为 %s",st.r0.datap,st.rmin.datap);void menu(StudentList *st) StudentType *x;x=(StudentType*)malloc(s
53、izeof(StudentType);int a;printf("1.修改 学生信 息n");printf("2.插入学生信息n");printf("3.删除学生信息n");printf("n 输入序号:n");scanf("%d",&a);switch(a) case 1:char na20;printf("请输入你要修改的学生的姓名:");scanf("%s",&na);Amst(st,na);break;case 2:Insertst(st);break;case 3:Deletest(st,x);break;void main() / 主函数int a;int e;int flag=1;char i;StudentList *st;st=(StudentList*)malloc(sizeof(StudentList);printf(" 欢迎使用学生管理系统 n");printf("请输入你
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公益助学资金管理制度
- 云计算与网络服务的整合策略试题及答案
- 公司礼品收发管理制度
- 信息系统监理师考试重点复习试题及答案
- 养老机构资金管理制度
- 幼儿园音体室管理制度
- 信息系统监理师备考经验交流试题及答案
- 小学纪律班级管理制度
- 平安工地监理管理制度
- 医院护理效期管理制度
- 阿尔茨海默病疾病修饰治疗专家共识(2025版)解读
- 设备故障应急维修预案
- (3篇)2025年春季形势与政策大作业:怎样正确理解全过程人民民主的历史逻辑、实践逻辑、理论逻辑?与专题测验(1-5)附答案
- 吉林2025年生态环境部松辽流域生态环境监督管理局生态环境监测与科学研究中心招聘笔试历年参考题库附带答案详解
- 四川西华师范大学招聘辅导员考试真题2024
- 贵州游船倾覆防灾减灾安全教育时事热点
- 公务员法律考试题及答案
- 黑龙江省大庆市石油高级中学2024-2025学年高二上学期期末语文试题 含解析
- 呼吸性酸中毒试题及答案
- 基于深度学习的手术机器人在后交叉韧带断裂中的导航优化-洞察阐释
- 检察院相关试题及答案
评论
0/150
提交评论