ImageVerifierCode 换一换
格式:DOC , 页数:21 ,大小:42.54KB ,
资源ID:2993144      下载积分:5 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/2993144.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     索取发票    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(c语言程序设计学生标准管理系统.doc)为本站上传会员【精***】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

c语言程序设计学生标准管理系统.doc

1、/*学生成绩管理系统数据库数据项关键数据包含:学号、姓名、年级、专业、成绩1、成绩2、成绩3、平均成绩、总成绩。要求含有以下功效:(1)添加、删除任意个统计。(2)修改任意个统计。(3)显示、保留统计。(4)排序功效:打开学生数据库,计算每个学生平均成绩和总成绩,用冒泡法或选择排序法将平均成绩和总成绩排序后生成两个新文件(从大到小), 存盘并显示这两个文件全部统计。(5)查询功效:打开总成绩排序文件,用折半查找法统计出给定分数人数并显示。 要求:(1)设计一个主函数和多个子函数,每个子函数完成一个相对独立子功效。(2)程序运行时,首优异行口令检验,再显示菜单。并能依据菜单调用对应函数功效。 口

2、令程序段功效要求: 1提醒用户输入一个口令。 2用户输入口令后,若口令对,则提醒用户经过,可实施后续程序;不然不经过。 3可对用户口令输入进行次数限制(如:反复输入3次全部不对),则自动退出系统。*/#include#include#includestruct studentint num;char name10;int grade;char major10;float score_1,score_2,score_3,aver,total;struct student *next;struct student *creat(void);struct student *add(void);str

3、uct student *del(int num);struct student *alter();void save(struct student *head);void read();void totalsort(struct student *head);void aversort(struct student *head);void Bfindsort();int all=0;void main()int i,n,m,num;char ord10=student,ord_110;struct student *p;for(i=0;i=3;i+)if(i=3) exit(0); prin

4、tf(请第%d次输入进入系统指令:,i+1);scanf(%s,ord_1);if(strcmp(ord,ord_1)!=0)printf(输入指令有误请重新输入。n);if(strcmp(ord,ord_1)=0)break;p=NULL;loop_2:printf(输入系统功效:n0、建立一个数据库;n1、添加和保留学生数据;n2、删除和保留学生数据;n3、修改和保留学生数据;n4、显示数据库统计;n5、将数据进行排序;n6、查询指定成绩人数:); loop: scanf(%d,&n);if(n6)printf(n输入选择有误请重新输入:);goto loop;if(n=2) printf

5、(输入删除学生数据学号:); scanf(%d,&num); switch(n)case 0:p=creat();save(p);read();break; case 1:p=add();save(p);read();break; case 2:p=del(num);save(p);read();break;case 3:p=alter();save(p);read();break;case 4:read();break;case 5:printf(输入选择排序功效1、依据平均成绩;2、依据总成绩:); loop_1: scanf(%d,&m);if(m2)printf(n输入选择有误请重新输

6、入:);goto loop_1; switch(m) case 1:aversort(p);break; case 2:totalsort(p);break; break;case 6:Bfindsort();break;loop_5: printf(输入你要进行步骤:1、返回上一菜单菜单;2、退出程序。n);scanf(%d,&n);if(n2)printf(输入选择有误,请重新输入:);goto loop_5;switch(n)case 1:goto loop_2;break;case 2:break;struct student *creat(void)int i,n;struct st

7、udent *head,*p,*q,*tail;printf(输入学生个数:);scanf(%d,&n);head=NULL;for(i=0;inext=p;tail=p;p-next=NULL;q=head;printf(输入学生学号、名字、年级、专业、三门成绩:);scanf(%d %s %d %s %f %f %f,&p-num,&p-name,&p-grade,&p-major,&p-score_1,&p-score_2,&p-score_3); loop: while(q-next!=NULL)if(q-num=p-num) printf(输入学生号错误请重新输入学生学号:);sca

8、nf(%d,&p-num);goto loop;q=q-next;p-aver=(p-score_1+p-score_2+p-score_3)/3;p-total=p-score_1+p-score_2+p-score_3; return(head);void save(struct student *head)struct student *p;FILE *fp;if(fp=fopen(student.txt,wb)=NULL)printf(打开文件失败。n);exit(0);p=head;while(p!=NULL)fwrite(p,sizeof(struct student),1,fp)

9、;p=p-next;fclose(fp);struct student *del(int num)int i,n=0;struct student *p,*q,*head;FILE *fp;if(all=0)printf(数据库为空。n);head=NULL;return(head);p=(struct student *)malloc(sizeof(struct student);if(fp=fopen(student.txt,rb)=NULL)printf(打开student.txt文件失败n);exit(0);for(i=0;p!=NULL;i+)p=(struct student *)

10、malloc(sizeof(struct student); fread(p,sizeof(struct student),1,fp);if(i=0) head=p;if(num=p-num)if(p=head)head=p-next;elseq-next=p-next;n+;all-;q=p;if(n=0)printf(没有%d这一学生号学生!n,num);return(head);struct student *add()int i,j,m,n=0;FILE *fp;struct student *p,*q,*temp,*head,*tail;if(all=0)head=NULL;else

11、if(fp=fopen(student.txt,rb)=NULL)printf(打开student.txt文件失败n);exit(0);p=(struct student*)malloc(sizeof(struct student);fread(p,sizeof(struct student),1,fp);head=p;tail=p; while(p-next!=NULL)p=(struct student*)malloc(sizeof(struct student);fread(p,sizeof(struct student),1,fp);tail-next=p;tail=p;tail-ne

12、xt=NULL;fclose(fp);printf(输入需要输入学生个数:);scanf(%d,&j);for(i=0;inum,&p-name,&p-grade,&p-major,&p-score_1,&p-score_2,&p-score_3);temp=head;loop_1: while(temp!=NULL)if(temp-num=p-num) printf(输入学生号错误请重新输入学生学号:);scanf(%d,&p-num);goto loop_1;temp=temp-next; p-aver=(p-score_1+p-score_2+p-score_3)/3; p-total=

13、p-score_1+p-score_2+p-score_3; if(head=NULL)head=p;p-next=NULL;elseq=head;n=1; while(q-next!=NULL) q=q-next; n+; printf(该链表一共有节点个数%d。n,n); loop: printf(输入将数据插入第多个节点后面。n);scanf(%d,&m);if(mn)printf(输入有误,请重新输入。n);goto loop;q=head;if(m=0)p-next=head;head=p;elsewhile(m-1)!=0)q=q-next;m-; p-next=q-next; q

14、-next=p;return(head);struct student *alter()int m,num,gra,n;char maj10,name10;float score_1,score_2,score_3;struct student *p,*q,*head;FILE *fp;if(all=0)printf(数据库为空。n);head=NULL;return(head);if(fp=fopen(student.txt,rb)=NULL)printf(打开student.txt文件失败n);exit(0);p=(struct student*)malloc(sizeof(struct

15、student);fread(p,sizeof(struct student),1,fp);head=p;q=p;loop_1:printf(输入修改学生数据姓名:);scanf(%s,&name);while(strcmp(name,p-name)!=0)p=p-next;if(p=NULL)printf(没有该学生。n);return(head);loop: printf(请选择修改学生具体数据:n1、学号;2、年级;3、专业;n4、成绩1;5、成绩2;6、成绩3:); scanf(%d,&m);if(m6)printf(n输入选择有误请重新输入:);goto loop;switch(m)

16、 case 1:printf(输入新学号:);loop_2:scanf(%d,&num); while(q!=NULL) if(q-num=num) printf(输入学生号错误请重新输入学生学号:);goto loop_2; q=q-next; p-num=num;break;case 2:printf(输入新年级:);scanf(%d,&gra); p-grade=gra; break;case 3:printf(输入新专业:);scanf(%s,&maj); strcpy(p-major,maj);break;case 4:printf(输入新成绩:);scanf(%f,&score_1

17、);p-score_1=score_1; p-aver=(p-score_1+p-score_2+p-score_3)/3; p-total=p-score_1+p-score_2+p-score_3; break;case 5:printf(输入新成绩:);scanf(%f,&score_2);p-score_2=score_2; p-aver=(p-score_1+p-score_2+p-score_3)/3; p-total=p-score_1+p-score_2+p-score_3;break;case 6:printf(输入新成绩:);scanf(%f,&score_3);p-sco

18、re_3=score_3; p-aver=(p-score_1+p-score_2+p-score_3)/3; p-total=p-score_1+p-score_2+p-score_3;break;printf(选择你要实施内容:n1、返回上一菜单n2、返回主菜单n3、修改另一学生数据);loop_5: scanf(%d,&n);if(n3)printf(输入选择有误,请重新输入:);goto loop_5;switch(n) case 1:goto loop;break;case 2:break;case 3:goto loop_1;break;return(head);void read

19、()struct student *p,*head;FILE *fp;if(all=0)printf(系统没有学生数据。n);return;if(fp=fopen(student.txt,rb)=NULL)printf(打开文件失败。n);exit(0);p=(struct student*)malloc(sizeof(struct student);fread(p,sizeof(struct student),1,fp);head=p;printf(打开student.txt文件学生数据。n);printf(list num name grade major score_1 score_2

20、score_3 aver totaln);while(p!=NULL)printf(student %-3d %-4s %-5d %-5s %-7.2f %-7.2f %-7.2f %-4.2f %-5.2f n, p-num,p-name,p-grade,p-major,p-score_1,p-score_2,p-score_3,p-aver,p-total);p=p-next;fclose(fp);void aversort(struct student *head)int temp;float temp_1;char temp_210;struct student *p,*q,*i;FI

21、LE *fp;p=head;while(p-next!=NULL)q=p;i=p-next;while(i!=NULL)if(i-averq-aver)q=i;i=i-next;if(q!=p)temp=p-num;p-num=q-num;q-num=temp;strcpy(temp_2,p-name);strcpy(p-name,q-name);strcpy(q-name,temp_2);temp=p-grade;p-grade=q-grade;q-grade=temp;strcpy(temp_2,p-major);strcpy(p-major,q-major);strcpy(q-major

22、,temp_2);temp_1=p-score_1;p-score_1=q-score_1;q-score_1=temp_1;temp_1=p-score_2;p-score_2=q-score_2;q-score_2=temp_1;temp_1=p-score_3;p-score_3=q-score_3;q-score_3=temp_1;temp_1=p-aver;p-aver=q-aver;q-aver=temp_1;temp_1=p-total;p-total=q-total;q-total=temp_1;p=p-next;if(fp=fopen(student_1.txt,wb+)=N

23、ULL)printf(打开student_1.txt文件失败n);exit(0);p=head;while(p!=NULL)fwrite(p,sizeof(struct student),1,fp);p=p-next;p=head;rewind(fp);printf(读出由平均成绩排序出来文件student_1.txt。n);printf(list num name grade major score_1 score_2 score_3 aver totaln);while(p!=NULL)fread(p,sizeof(struct student),1,fp);printf(student

24、%-3d %-4s %-5d %-5s %-7.2f %-7.2f %-7.2f %-4.2f %-5.2f n, p-num,p-name,p-grade,p-major,p-score_1,p-score_2,p-score_3,p-aver,p-total);p=p-next;fclose(fp);void totalsort(struct student *head)int temp;float temp_1;char temp_210;struct student *p,*q,*i;FILE *fp;p=head;while(p-next!=NULL)q=p;i=p-next;whi

25、le(i!=NULL)if(i-totalq-total)q=i;i=i-next;if(q!=p)temp=p-num;p-num=q-num;q-num=temp;strcpy(temp_2,p-name);strcpy(p-name,q-name);strcpy(q-name,temp_2);temp=p-grade;p-grade=q-grade;q-grade=temp;strcpy(temp_2,p-major);strcpy(p-major,q-major);strcpy(q-major,temp_2);temp_1=p-score_1;p-score_1=q-score_1;q

26、-score_1=temp_1;temp_1=p-score_2;p-score_2=q-score_2;q-score_2=temp_1;temp_1=p-score_3;p-score_3=q-score_3;q-score_3=temp_1;temp_1=p-aver;p-aver=q-aver;q-aver=temp_1;temp_1=p-total;p-total=q-total;q-total=temp_1;p=p-next;if(fp=fopen(student_1.txt,wb+)=NULL)printf(打开student_1.txt文件失败n);exit(0);p=head

27、;while(p!=NULL)fwrite(p,sizeof(struct student),1,fp);p=p-next;p=head;rewind(fp);printf(读出由平均成绩排序出来文件student_1.txt。n);printf(list num name grade major score_1 score_2 score_3 aver totaln);while(p!=NULL)fread(p,sizeof(struct student),1,fp);printf(student %-3d %-4s %-5d %-5s %-7.2f %-7.2f %-7.2f %-4.2f

28、 %-5.2f n, p-num,p-name,p-grade,p-major,p-score_1,p-score_2,p-score_3,p-aver,p-total);p=p-next;fclose(fp);void Bfindsort()int i,k,a=0,b=0,low,high,m;float score,score_1100;struct student *p;FILE *fp;p=(struct student *)malloc(sizeof(struct student);if(fp=fopen(student_1.txt,rb)=NULL)printf(打开student

29、_1.txt文件失败n);exit(0);for(i=0;p-next!=NULL;i+) fread(p,sizeof(struct student),1,fp);score_1i=p-total;printf(输入需要查询分数:);scanf(%f,&score);low=0;high=i-1;k=i;m=(low+high)/2;while(high=low) if(score_1mscore) high=m-1;elselow=m+1;m=(low+high)/2;for(i=high+1;score_1i=score&i0;i-)b+;printf(输出该总分数人数%dn,a+b);

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服