ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:18.91KB ,
资源ID:16545203      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

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

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言课程设计学生成绩管理系统完美运行代码Word格式文档下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言课程设计学生成绩管理系统完美运行代码Word格式文档下载.docx

1、void PrintTablHeader();void PrintAll(Student *a,int n);int SearchByNo(Student *a,int n,char no);void SearchByname(Student *a,int n,char name);void SortByTotal(Student*a,int n);void SortByMcu(Student*a,int n);void SortByMath(Student*a,int n);void SortByEnglish(Student*a,int n);void Sort(Student *a,in

2、t n,int course);int DeleteByNo(Student*a,int n,char no);void save(Student *a,int n);void english(Student stu , int n );void math(Student stu , int n);void mcu(Student stu , int n);void englishaver(Student stu,int n);void mathaver(Student stu,int n);void mcuaver(Student stu,int n);void totalaver(Stud

3、ent stu,int n);int load(Student t);/符号常量和变量说明#define N 100 / 学生最大人数int length=0; / 学生实际人数 int item;char ch;#define ENGLISH 0 / 英语课程#define MATH 1 / 数学课程#define MCU 2 / 计算机课程#define TOTAL 3 / 总分Student stuN = / 学生结构体数组,全局变量 10, 王安男, 1991, 2, 14, 15, 55,31,11张羽女, 1992, 9, 22, 92, 83, 58,12李明, 1992, 2,

4、 18, 60, 65, 72,13,李江,1992,12,14,100,50,78,14李楠, 1992, 6, 29, 90, 52, 76,15张萍,1991, 8, 9,57, 78, 92,16李文,1992,10,4,100,80,60,17张雨,1991,12,14,60,90,80/6.2主函数及各功能函数void Init() int i; length=8; for(i=0;ino,p-name,p-sex,birth.year,p-birth.month,p-birth.day,sco.english,p-sco.math,p-sco.mcu,p-sco.total);

5、void PrintTablHeader ()学号t姓名t性别t生日tt英语t数学t计算机t总分nvoid PrintAll(Student *a,int n) 目前学生总人数为:%dn,length); PrintTablHeader();n; Print(&ai);/调用Printf函数输出第i个学生信息 printf(nint SearchByNo(Student *a,int n,char no) /按学号查找学生成绩信息 int p=-1; if(strcmp(ai.no,no)=0) p=i; break; return p;void SearchByname(Student *a

6、,int n,char name) /按姓名查找学生成绩信息 int flag=0; for (i=0; if(strcmp(ai.name, name)=0) flag=1; Print(& printf( if (flag=0) printf(查询失败!void SortByEnglish(Student*a,int n) /根据英语成绩进行排序 int i,j;/循环变量 float maxval;/用于临时保存最大值 int maxpos;/用于临时保存最大值的下标 Student temp;/临时变量 /总共需要N-1次选择和交换n-1; maxval=ai.sco.english;

7、 maxpos=i; /在无序区寻找最大值 for (j=i;jmaxval) maxval=aj.sco.english; maxpos=j; if (maxpos!=-1) temp=amaxpos; amaxpos=ai; ai=temp; void SortByMath(Student*a,int n) /根据数学成绩进行排序 maxval=ai.sco.math; if (aj.sco.math maxval=aj.sco.math;=i)void SortByMcu(Student*a,int n) /根据计算机成绩进行排序 maxval=ai.sco.mcu; if (aj.sc

8、o.mcu maxval=aj.sco.mcu;void SortByTotal(Student*a,int n) /根据学生总成绩进行排序 maxval=ai.sco.total; if (aj.sco.total maxval=aj.sco.total; if (maxpos !void english(Student stu , int n) /查询英语成绩不及格学生信息 int i=0; for(i=0; if(stui.sco.english60)t学生证号:%-15s姓名:%-15s英语分数:%-15gnn,stui.no,stui.name,stui.sco.english);v

9、oid math(Student stu , int n) /查询数学成绩不及格学生信息 if(stui.sco.math%-15s数学分数:,stui.no,stui.name,stui.sco.math);void mcu(Student stu , int n) /查询计算机成绩不及格学生信息 if(stui.sco.mcu=N) return n; while (1)请输入学号: scanf(%s,&an.no); pos=SearchByNo(a,n,an.no); if (pos!=-1) printf(学号已经存在,请重新输入! else break;请输入姓名:an.name)

10、;请输入性别:an.sex);请输入出生年份:%dan.birth .year);请输入出生月份:an.birth .month );请输入出生日期:an.birth .day );请输入英语成绩:%fan.sco.english );请输入数学成绩:an.sco.math );请输入计算机成绩:an.sco.mcu); an.sco.total =an.sco.english+an.sco.math+an.sco.mcu; n+; return n;int DeleteByNo(Student*a,int n,char no) int pos=SearchByNo(a,n,no); if (

11、pos=-1)学号不存在,请重新输入!/减少学生人数,并返回该值 if (pos=n-1) n-; for (i=pos; ai=ai+1;/*修改函数*/int ModifyByNo(Student*a,int n,char no) int p; char sno15; if(pos=-1) 该学生不存在!请输入学号:sno); p=SearchByNo(a,n,sno); if(p=-1 | p=pos)/两种情况,1.下表不存在 2.不修改下表 strcpy(apos.no,sno); else printf(学生学号已存在,请重新输入!apos.name );apos.sex);apo

12、s.birth .year);apos.birth .month );apos.birth .day );apos.sco.english );apos.sco.math );apos.sco.mcu );void save(Student *a,int n) /保存函数 FILE *fp; if(fp=fopen(student information.txtwb)=NULL)不能打开文件! exit(1);n保存文件n fprintf(fp,n);/将记录数写入文件rn/将换行符号写入文件i+) fprintf(fp,ai.no,ai.name ,ai.sex ,ai.birth .yea

13、r,ai.birth .month ,ai.birth .day ,ai.sco.english ,ai.sco .math ,ai.sco .mcu ,ai.sco.total );/写入记录 fprintf(fp, fclose(fp);成功保存文件!/*文件的读入*/int load(Student t) int i,n;rb+)=NULL)/打开文件 fscanf(fp,n);/读入记录数 fread(fp,%st%st%st%d%d%dt%3.1ft%ft%ft%f,ti.no ,ti.name,ti.sex,&ti.birth.year,&ti.birth.month,&ti.bi

14、rth.day,&ti.sco.english,&ti.sco.math,&ti.sco.mcu,&ti.sco.total);/读入记录 成功读入记录!void englishaver( Student stu,int n) /英语平均成绩int i;double aver1,sum1=0;for(i=0; sum1+=stui.sco.english; aver1=1.0*sum1/n;英语平均分:%.2fnn,aver1);void mathaver(Student stu,int n) /数学平均成绩 sum1=sum1+stui.sco.math; aver1=sum1/n;数学平均分: %.2fnnvoid mcuaver(Student stu,int n) /计算机平均成绩double aver1,sum1=0 ;n+1; sum1+=stui.sco.mcu;计算机平均分:void totalaver(Student stu,int n) /总平均成绩 int i ;double aver1,sum; sum=stui.sco.mcu+stui.sco.english+stui

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1