




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
#include#include#define NULL 0#define LTS sizeof(struct mark)struct mark unsigned long int num; char name20; int clas ; float math; float English; float computer; float total; float ver; struct mark *next; ;struct mark *D_insertsort(struct mark *head) int flag=0,a,b; struct mark *f,*g,*q,*r,*s,*t; f=head; q=f-next; f-next=NULL; t=f; printf(按数学请按1,按英语请按2,按微机请按3,按总成绩请按4:n); scanf(%d,&a); switch(a) case 1: for(q;q!=NULL;) r=q; q=q-next; r-next=NULL; if(f-mathmath) r-next=f; f=r; t=f; else if(f-mathr-math) while(f!=NULL) if(f-next!=NULL) s=f-next; if (s-mathmath) r-next=f-next; f-next=r; break; else f=f-next; else if(f-next=NULL) f-next=r; break; break; case 2: for(q;q!=NULL;) r=q; q=q-next; r-next=NULL; if(f-EnglishEnglish) r-next=f; f=r; t=f; else if(f-Englishr-English) while(f!=NULL) if(f-next!=NULL) s=f-next; if (s-EnglishEnglish) r-next=f-next; f-next=r; break; else f=f-next; else if(f-next=NULL) f-next=r; break; break; case 3: for(q;q!=NULL;) r=q; q=q-next; r-next=NULL; if(f-computercomputer) r-next=f; f=r; t=f; else if(f-computerr-computer) while(f!=NULL) if(f-next!=NULL) s=f-next; if (s-computercomputer) r-next=f-next; f-next=r; break; else f=f-next; else if(f-next=NULL) f-next=r; break; break; case 4: for(q;q!=NULL;) r=q; q=q-next; r-next=NULL; if(f-totaltotal) r-next=f; f=r; t=f; else if(f-totalr-total) while(f!=NULL) if(f-next!=NULL) s=f-next; if (s-totaltotal) r-next=f-next; f-next=r; break; else f=f-next; else if(f-next=NULL) f-next=r; break; break; default: printf(*你的输入有错,请重新输入n); return(t); struct mark *S_insertsort(struct mark *head) int flag=0,a,b; struct mark *f,*g,*q,*r,*s,*t; f=head; q=f-next; f-next=NULL; t=f; printf(按数学请按1,按英语请按2,按微机请按3,按总成绩请按4:n); scanf(%d,&a); switch(a) case 1: for(q;q!=NULL;) r=q; q=q-next; r-next=NULL; if(f-math=r-math) r-next=f; f=r; t=f; else if(f-mathmath) while(f!=NULL) if(f-next!=NULL) s=f-next; if (s-math=r-math) r-next=f-next; f-next=r; break; else f=f-next; else if(f-next=NULL) f-next=r; break; case 2: for(q;q!=NULL;) r=q; q=q-next; r-next=NULL; if(f-English=r-English) r-next=f; f=r; t=f; else if(f-EnglishEnglish) while(f!=NULL) if(f-next!=NULL) s=f-next; if (s-English=r-English) r-next=f-next; f-next=r; break; else f=f-next; else if(f-next=NULL) f-next=r; break; case 3: for(q;q!=NULL;) r=q; q=q-next; r-next=NULL; if(f-computer=r-computer) r-next=f; f=r; t=f; else if(f-computercomputer) while(f!=NULL) if(f-next!=NULL) s=f-next; if (s-computer=r-computer) r-next=f-next; f-next=r; break; else f=f-next; else if(f-next=NULL) f-next=r; break; case 4: for(q;q!=NULL;) r=q; q=q-next; r-next=NULL; if(f-total=r-total) r-next=f; f=r; t=f; else if(f-totaltotal) while(f!=NULL) if(f-next!=NULL) s=f-next; if (s-total=r-total) r-next=f-next; f-next=r; break; else f=f-next; else if(f-next=NULL) f-next=r; break; head=t; return(t); void began()/*开始界面*/ printf(tn); printf(t 学生成绩管理系统 n); printf(tn); printf(t (0) 学 籍 录 入 (1) 成 绩 录 入n); printf(tn); printf(t (2) 显 示 全 部 学 生 成绩 (3) 删 除 学 生 成 绩n); printf(tn); printf(t (4) 显 示 某 学 生 成 绩 (5) 显示指定分数段学生成绩n); printf(tn); printf(t (6) 显示班级人数及平均成绩 (7) 成 绩 排 序 并 显 示 n); printf(tn);void main() struct mark *head; struct mark *Lp,*mp,*up,*rp,*rup; struct mark *zp,*jp; struct mark *sp,*hp; struct mark *xp,*ip,*ap; struct mark *fp,*ep; struct mark *bp; struct mark *pp; int n,i,k,b,flag,min,max; float s; head=NULL; began();for (i=0;inum); printf(*请输入学生名字n); scanf(%s,&Lp-name); printf(*请输入学生班级n); scanf(%d,&Lp-clas); Lp-computer=NULL; Lp-English=NULL; Lp-math=NULL; Lp-total=NULL; Lp-ver=NULL; if(head=NULL) head=Lp; mp=Lp; mp-next=NULL; else Lp-next=NULL; mp-next=Lp; mp=Lp; printf(*学籍输入成功n); began(); break; case 1: up=(struct mark *)malloc(LTS); printf(*请输入学生学号n); scanf(%lu,&up-num); if(head=NULL) printf(*还没有学生学籍n); else rp=(struct mark *)malloc(LTS); rp=head; while(rp!=NULL) if(rp-num=up-num) printf(*请输入数学成绩n); scanf(%f,&rp-math); printf(*请输入英语成绩n); scanf(%f,&rp-English); printf(*请输入微机成绩n); scanf(%f,&rp-computer); rp-total=(rp-math+rp-English+rp-computer); rp-ver=rp-total/3; flag=1; break; else rp=rp-next; flag=0; if(flag=1) printf(*学生成绩录入成功n); else if (flag=0) printf(*没有该学生的学籍n); began(); break; case 2: xp=head; if(xp!=NULL) do printf(*学号 %lun,xp-num); printf(*姓名 %sn,xp-name); printf(*班级 %dn,xp-clas); if(xp-math=NULL) printf(*还没录入该学生成绩); else if(xp-math!=NULL) printf(*数学成绩 %.2fn,xp-math); printf(*英语成绩 %.2fn,xp-English); printf(*微机成绩 %.2fn,xp-computer); printf(*总成绩 %.2fn,xp-total); printf(*平均成绩 %.2fn,xp-ver); printf(*n ); printf(*n ); xp=xp-next; while(xp!=NULL); else printf(*还没存入数据n); began(); break; case 3: hp=(struct mark *)malloc(LTS); printf(*请输入学生学号n); scanf(%lu,&hp-num); if(head=NULL) printf(*还没有学生学籍n); else sp=(struct mark *)malloc(LTS); sp=head; while(sp!=NULL) if(sp-num=hp-num) sp-computer=NULL; sp-English=NULL; sp-math=NULL; sp-total=NULL; sp-ver=NULL; flag=1; break; else sp=sp-next; flag=0; if(flag=1) printf(*学生成绩删除成功n); else if (flag=0) printf(*没有该学生的学籍n); began(); break; case 4: ip=(struct mark *)malloc(LTS); printf(*请输入学生学号n); scanf(%lu,&ip-num); if(head=NULL) printf(*还没有学生学籍n); else ap=(struct mark *)malloc(LTS); ap=head; while(ap!=NULL) if(ap-num=ip-num&ap-math!=NULL) printf(*学号 %lun,ap-num); printf(*姓名 %sn,ap-name); printf(*班级 %dn,ap-clas); printf(*数学成绩 %.2fn,ap-math); printf(*英语成绩 %.2fn,ap-English); printf(*微机成绩 %.2fn,ap-computer); printf(*总成绩 %.2fn,ap-total); printf(*平均成绩 %.2fn,ap-ver); flag=1; break; else ap=ap-next; flag=0; if(flag=1) printf(*学生成绩输出成功n); else if (flag=0) printf(*没有该学生的学籍或者还没输入该学生成绩n); began(); break; case 5: printf(*请输入最低总分:); scanf(%d,&min); printf(*请输入最高总分:); scanf(%d,&max); fp=(struct mark *)malloc(LTS); fp=head; while(fp!=NULL) if(fp-total=min&fp-totalnum); printf(*姓名 %sn,fp-name); printf(*班级 %dn,fp-clas); printf(*数学成绩 %.2fn,fp-math); printf(*英语成绩 %.2fn,fp-English); printf(*微机成绩 %.2fn,fp-computer); printf(*总成绩 %.2fn,fp-total); printf(*平均成绩 %.2fn,fp-ver); fp=fp-next; began(); break;case 6: printf(*请输入班级号); scanf(%d,&b); s=0; i=0; bp=(struct mark *)malloc(LTS); bp=head
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2030中国篮板球运动员行业发展研究与产业战略规划分析评估报告
- 2025年智能机器人协作系统技术创新研究
- 人造板饰面工技能比武考核试卷及答案
- 丙酮氰醇装置操作工协同作业考核试卷及答案
- 保安师傅考试试题及答案
- 2025年人力资源考试题目及答案
- 高端母婴市场2025年消费行为分析与品牌战略研究报告
- 丁二酸装置操作工操作考核试卷及答案
- 异戊橡胶装置操作工安全规范考核试卷及答案
- 数据库运行管理员技能操作考核试卷及答案
- 第一课 踏上强国之路 公开课一等奖创新教案 统编版道德与法治九年级上册
- 中学知识竞赛试题及答案
- 药品专业知识与技能培训
- 北京京剧院劳动合同制职工招考聘用模拟卷含答案
- 苏教版二下《折彩粽》教学设计
- 精选艾森克人格问卷测试成人版和少年版计分方式
- 《作用于肾上腺素受体的药物》精品PPT
- 《卫生政策学》第三章 政策问题确认
- 粉体合成与制备
- 水利水库工程项目划分表及说明书
- 面试求职表登记表
评论
0/150
提交评论