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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(数据结构毕业课程设计学生成绩管理系统.docx)为本站会员(b****7)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

数据结构毕业课程设计学生成绩管理系统.docx

1、数据结构毕业课程设计学生成绩管理系统淮阴工学院数据结构课程设计报告选题名称: 学生成绩管理系统 系(院): 数 理 学 院 专 业: 信息与计算科学 班 级: 计科1102班 指导教师: 周 海 岩 学年学期: 2011 2012 学年 第 1 学期 2012 年 06 月 06 日【摘 要】21世纪,科学技术突飞猛进,经济知识和信息产业初见端倪,特别是信息技术和网络技术的讯速发展和广泛应用,对社会的政治,经济,军事,文化等领域产生越来越深刻。学生成绩管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要。本论文叙述到的学生成绩管理系统是用IIS+ASP网页编程+

2、ACCESS数据库+DREAMWEAVER MX 2004+SQL查询语言实现的。重点介绍了学生成绩管理系统的实现过程:包括系统分析,系统调查,功能设计,数据库设计,系统实现,系统测试和调试等。本系统主要功能有查询学生成绩、单个添加学生成绩、批量添加学生成绩、删除学生成绩、管理页面和修改管理员密码等内容。【关键词】 成绩管理; 成绩查询; C+目 录中文摘要 。 11绪论 。 41.1 选题背景 。 51.2 需求分析 。 62总体设计 。 7 2.1程序设计组成框图 。 82.2 模块功能说明 。92.3 程序流程图 。102.4 主要函数之间相互调用 。 113 在设计过程中的感受 。12

3、致谢 。 13参考文献 。 14附录:源程序清单 。 151. 绪论1.1 选题背景为了提高高校学生信息的管理效率,方便对学生信息进行管理、学校里面的学生和管理员方便去管理和查询学生信息,如再要进行查询,就得在众多的学生信息中查找自己的成绩信息,面对学院大量的学生信息,怎么可以即时而方便的管理,学生只要登录本系统就可以查找到自己的成绩信息,而管理员也方便去管理每学期的学生的成绩信息。建立一个学生信息管理系统,使学生信息管理工作规范化,系统化,程序化,避免学生管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改学生信息是必须而且十分迫切的工作。2.1 需求分析学生管理系统功

4、能的信息量大,数据安全性和保密性要求最高。本功能实现对专业信息、学生信息、教师信息情况信息的管理和统计、课程信息和成绩信息查看及维护。系统管理员可以浏览、查询、学生的基本信息,能添加、删除和修改学生信息,这部分功能应该由系统管理员执行,但是,删除某条专业基本信息记录时,应实现对该专业的相关信息也级联删除。并且还应具有查询,并打印输出的功能设计不同用户的操作权限和登陆方法、对所有用户开放的用户提供学生成绩信息查询、由于本系统功能实现方面并不太复杂,所以上面只是相关的学生信息管理查询的总体分析,具体实现就主要体现在学生管理,教师的管理和课程的管理这一块,也就是重点实现查询与添加学生信息,以及对成绩

5、信息管理。 2总体设计(1)程序设计组成框图(2)模块功能说明1 输出功能:完成全部学生记录的显示。2 查询功能:输入姓名可以查询学生的详细信息。3 增加功能:增加新学生的信息。 4 删除功能:删除学生信息。5 修改功能:修改学生的错误信息。6保存功能:保存已输入信息。7读取功能:读取已输入信息。8显示功能:按要求显示学生记录。9 排序功能:按要求完成对学生信息的排序。 10 退出系统。(3)程序流程图(4)主要函数之间相互调用如下: 总 结首先经过一周的编程实习,并在后一段的报告总结,我对数据结构这门科有新的认识,本人实在是获益不浅!要想编写一个准确、高效并有使用价值的程序,一定先要对课本知

6、识熟悉,还要掌握必要的上机操作能力,写程序其实很容易而关键在于调试程序。这次设计,让我重新掌握了数据结构,而且还得到了用数据结构解决实际问题的宝贵经验。其次, 通过此次编程我也发现了自己在学习中的错误和不足,复习了以前学过的知识。同时也学到了一些没学过的知识,让我从中收益非浅,也为期末考试准备了一下!更重要的是培养了独立思考问题和解决问题的能力,熟悉了一些基本操作和解决问题的方法!致 谢因为初次接触等原因此次设计遇到了许多问题,我深刻体会到老师发挥的重要作用, 数据结构程序对我们来说比较难,在匆忙的学习中更是难上加难,似乎觉得自己仅是个匆匆过客,但在老师的帮助下我学会了如何调试,如何查找系统没

7、有提示的错误,最后终于排除万难把程序搞定,体会到原来编程也挺有意思的快感.我想没有老师的帮助我很难在短期内把程序设计做的这样好,在此特地感谢老师的帮助。 参 考 文 献1 李丽娟 . C语言程序设计教程(第二版). 北京:人民邮电出版社 20092 刁成嘉 . C语言程序设计论文 D.北京:清华大学出版社 20043 杨文军,杨柳 . C语言程序设计教程M. 北京:清华大学出版社 20104 周启海 . C语言程序设计报告R.北京:中国水利工程出版社 20055 谭浩强 . C程序设计(第三版)M.北京:清华大学出版社 2005附 录源程序清单#includestudentNumber,p-s

8、tudentName,p-className,&(p-mark1),&(p-mark2),&(p-mark3)0)InsertOneNode(p);p=MallocNode();fclose(fp);*函数功能:显示菜单,根据用户的输入完成相应的功能*void DesplayMenu(void)STUDENT *p;printf(| 1 按班级输出学生成绩单 |n);printf(| 2 按姓名查询 |n);printf(| 3 增加学生 |n);printf(| 4 删除学生 |n);printf(| 5 按班级修改学生成绩 |n);printf(| 6 按学期修改学生成绩 |n);prin

9、tf(| 7 保存所有学生信息 |n);printf(| 8 显示不及格学生成绩 |n);printf(| 9 按平均成绩排序并输出绩 |n);printf(| 10 退出 |nn);scanf(%d,&choose);*取得用户的选择*switch(choose)case 1:OutputInformation();*显示所有学生的信息*break;case 2:DesplayInfoBystudentName();break;case 3:p=MallocNode();*先申请一个新结点*GetInformation(p);*要求用户输入信息到新结点中*InsertOneNode(p);*

10、将新结点加到链表中*break;case 4:DeleteNodeBystudentNumber();*根据用户输入的学号删除该学生*break;case 5:ChangeMarkByName();*根据用户输入的姓名修改学生成绩*break;case 6:ChangeMarkByNumber();*根据用户输入的学号修改学生成绩*break;case 7:SaveLinkToFile();*保存数据*break;case 8:DesplayMarkSegment();*显示不及格的学生成绩*break;case 9:CompositorByTotalMark();*按平均成绩排序*break

11、;case 10:SaveLinkToFile();*保存数据后再退出*free( NULL;for(i=0;istudentNumberi=0;for(i=0;istudentNamei=0;for(i=0;iclassNamei=0;p-mark1=0.0;p-mark2=0.0;p-mark3=0.0;p-next=NULL;return p;*函数功能:取得用户输入的学生信息*void GetInformation(STUDENT *t)printf(请输入学生学号:n);scanf(%s,t-studentNumber);printf(请输入学生姓名:n);scanf(%s,t-st

12、udentName);printf(请输入该生所在班级:n);scanf(%s,t-className);printf(请输入第1门成绩:n);scanf(%f,&(t-mark1);printf(请输入第2门成绩:n);scanf(%f,&(t-mark2);printf(请输入第3门成绩:n);scanf(%f,&(t-mark3);*函数功能:在链表的结尾处增加一个结点*void InsertOneNode(STUDENT *t)STUDENT *p;p=);scanf(%s,studentName);while(p)if(strcmp(p-studentName,studentName

13、)=0)printf(学号t姓名t班级t成绩1t成绩1t成绩3t总成绩t平均成绩nn);DesplayOneNode(p);flag=1;break;p=p-next;if(!flag)printf(对不起,不存在姓名为 %s 的学生n,studentName);*函数功能:输出一个结点的信息*void DesplayOneNode(STUDENT *t)printf(%st,t-studentNumber);printf(%st,t-studentName);printf(%st,t-className);printf(%.2ft,t-mark1);printf(%.2ft,t-mark2)

14、;printf(%.2ft,t-mark3);printf(%.2ft,t-mark1+t-mark2+t-mark3);printf(%.2ftn,(t-mark1+t-mark2+t-mark3)3);*函数功能:根据用户输入的学号删除该学生*void DeleteNodeBystudentNumber(void)char studentNumber10;STUDENT *p,*q;char flag=0;printf(请输入要删除的学生学号:);scanf(%s,studentNumber);p=);return;printf(成功删除n);*函数功能:显示所有学生的信息*void Ou

15、tputInformation(void)STUDENT *p;p=n);return;printf(学号t姓名t班级t成绩1t成绩1t成绩3t总成绩t平均成绩nn);while(p)DesplayOneNode(p);p=p-next;*函数功能:根据输入的班级修改成绩*void ChangeMarkByName(void)STUDENT *p;int a;char studentName20;char flag=0;float mark1,mark2,mark3;p=);scanf(%d,&a);printf(请输入学生姓名:n);scanf(%s,studentName);while(p

16、)if(strcmp(p-studentName,studentName)=0)printf(请输入新的第1门成绩:n);scanf(%f,&mark1);printf(请输入新的第2门成绩:n);scanf(%f,&mark2);printf(请输入新的第3门成绩:n);scanf(%f,&mark3);p-mark1=mark1;p-mark2=mark2;p-mark3=mark3;flag=1;printf(修改成功n);break;p=p-next;if(!flag)printf(对不起,不存在班级为 %s 的学生n,studentName);*函数功能:根据输入的学期修改成绩*vo

17、id ChangeMarkByNumber(void)STUDENT *p;int b;char studentNumber20;char flag=0;float mark1,mark2,mark3;p=);scanf(%d,&b);printf(请输入学生学号:n);scanf(%s,studentNumber);while(p)if(strcmp(p-studentNumber,studentNumber)=0)printf(请输入新的第1门成绩:n);scanf(%f,&mark1);printf(请输入新的第2门成绩:n);scanf(%f,&mark2);printf(请输入新的第

18、3门成绩:n);scanf(%f,&mark3);p-mark1=mark1;p-mark2=mark2;p-mark3=mark3;flag=1;printf(修改成功n);break;p=p-next;if(!flag)printf(对不起,不存在学期为 %s 的学生n,studentNumber);*函数功能:保存链表数据到文件中*void SaveLinkToFile(void)STUDENT *p;FILE *fp;p=n);return;fp=fopen(student.txt,w+);if(!fp)printf(文件不存在n);return;while(p)fprintf(fp,

19、%s %s %s %f %f %fn,p-studentNumber,p-studentName,p-className,p-mark1,p-mark2,p-mark3);p=p-next;fclose(fp);*函数功能:不及格学生成绩*void DesplayMarkSegment(void)STUDENT *p;int count=0;p=);printf(学号t姓名t班级t成绩1t成绩1t成绩3t总成绩t平均成绩nn);while(p)if(6(int)(p-mark110)|(6(int)(p-mark210)|(6(int)(p-mark310)*只要有一科不及格就认为该生不及格*

20、count+;DesplayOneNode(p);p=p-next;printf(不及格的学生一共有%d人n,count);*函数功能:按平均成绩排序*void CompositorByTotalMark(void)STUDENT exchange,*r,*p,*q;r=);return;while(r)*两层while循环实现排序*p=r;q=r-next;while(q)if(q-mark1+q-mark2+q-mark3)(p-mark1+p-mark2+p-mark3)strcpy(exchange.studentNumber,q-studentNumber);*先复制q结点信息到ex

21、change*strcpy(exchange.studentName,q-studentName);strcpy(exchange.className,q-className);exchange.mark1=q-mark1;exchange.mark2=q-mark2;exchange.mark3=q-mark3;strcpy(q-studentNumber,p-studentNumber);*再复制p结点信息到q*strcpy(q-studentName,p-studentName);strcpy(q-className,p-className);q-mark1=p-mark1;q-mark2=p-mark3;q-mark3=p-mark3;strcpy(p-studentNumber,exchange.studentNumber);*最后复制exchange结点信息到p*strcpy(p-studentName,exchange.studentName);strcpy(p-className,exchange.className);p-mark1=exchange.mark1;p-mark2=exchange.mark2;p-mark3=exchange.mark3;q=q-next;r=r-next;OutputInformation();

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2