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

开通VIP
 

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

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

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

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

注意事项

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

学生成绩管理数据结构课程设计.doc

1、 计算机工程学院 实 践 报 告 课程名称:数据结构课程设计 设计题目: 学生成绩管理 院 系: 数理学院 专 业: 信息与计算科学 组 别: 28 学生姓名: 陆君 学号: 1114101128 起止日期: 2013年 7月 1日~2013 年 7月5日 指导教师: 周海岩

2、 寇海洲 学年学期: 2012 ~ 2013 学年 第 2 学期 设计任务书 课题 名称 学生成绩管理 设计 目的 综合运用程序设计、算法设计的方法,对实际应用中的问题进行数据分析和组织、算法设计和分析、程序设计和调试等环节,将理论与实践相结合,掌握利用计算机解决实际问题的基本方法和基本步骤,培养学生良好的程序设计风格、算法设计和分析能力。 实验 环境 P IV以上计算机,Window XP以上操作系统; 编程语言不限。 任务 要求 要求学生结合课程体系的实际需求及实践能力、实验条件等外部因素,完成学生成绩管理课题

3、的设计任务。 课题功能:1)实现对学生成绩的录入; 2)对输入的数据进行查询、修改、删除、排序等操作; 任务要求:1)界面友好,函数功能要划分好;2)总体设计应画流程图;3)程序要加必要的注释。4)学生完成设计任务后,按要求提交算法设计报告,设计报告规范化,并能够反映算法设计的实际内容。 工作进度计划 序号 起止时间 工 作 内 容 1 1~6周 制定课程设计计划,编写课程设计指导书 2 13~18周 下发任务,学生选题,分组,查阅资料 3 19周 上机系统调试,课程设计报告,课程设计答辩 4 20周 上交报告电子及打印文档 指导教师:周海岩

4、 年 月 日 摘要: 学生成绩管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强,数据安全性强,数据安全性好的库。而对于后者则要求应用程序功能完备易使用等特点。该系统主要实现,添加、修改、删除、读出、写入、查找、排序、计算总分、平均分、分类汇总等功能。系统的核心是添加、修改和删除三者之间的联系,每个表的修改都将联动的影响其他的表,当完成添加或删除操作时系统会自动地完成学生成绩的修改。查询功能也是系统的核心之一,在系统中主要根据学生姓名和学号进行查询,其目

5、的就是为了方便用户使用。系统有完整的用户添加、修改、删除和密码修改功能,并具备报表打印功能。 关键词:添加;修改;删除;查找;排序;总分;平均分 目 录 1 需求分析: 1 1.1任务及要求 1 1.2程序设计思想 1 1.3实现功能 1 2 概要设计: 2 2.1线性顺序表的抽象数据定义: 3 2.2程序框图 3 2.3程序模块 3 3 详细设计: 5 3.1声明一个student的结构体类型并且定义变量 5 3.2声明类system且构造函数 6 3.3调用添加函数 6 3.4调用查询函数 7 3.5调用显示函数 7 3.6调用修改函数 8

6、 3.7调用删除函数 9 3.8调用排序函数 9 3.9 do……while判断是否循环 11 4 调试分析: 12 5 测试结果: 13 5.1主菜单 13 5.2添加学生成绩 13 5.3查询学生成绩 14 5.4显示学生成绩 14 5.5修改学生成绩 15 5.6删除学生成绩 15 5.7对学生成绩排序 15 5.8退出 16 5.9源程序文件名清单 16 6 附录: 17 1.需求分析 1.1 任务及要求 该系统主要实现,添加、修改、删除、读出、查找、排序、计算总分、平均分、分类汇总等功能。 1.2 程序设计思想 该系统需要解决多个问

7、题,数据类型特征并不都相同。为了解决问题的方便化,采用结构体来做程序。并且很多数据在输出时采用了循环语句人为完成。 1.3 实现功能 1)录入数据:将学生学号、姓名、成绩写入文件。  2) 增加人员:增加学生,并将学生姓名、学号和成绩写入文件。  3) 删除人员:删除学生信息和成绩。  4) 修改数据:修改学生成绩。  5) 按学号查询:根据学号查询学生成绩,包括平均分。  6) 按姓名查询:根据学生姓名查询学生成绩,包括总分和平均分。  7) 输出所有学生成绩。  8) 按照总分、平均分从高到低排序。 2.概要设计 2.1 涉及到的基础知识 所用到的基础知识有结构体和

8、简单的do--while循环语句和“break”跳出循环语句同时还有多处用到了for循环语句。通过多个函数的结合完成预期的结果。 1.结构、类和构造函数 声明结构类型时,首先指定关键字struct和结构名,然后用一对花括号将若干个结构成员数据类型说明括起来。 (1).Struct student //声明一个名为student的结构体类型 {//定义变量 }; int main() {//定义student的结构变量,分配变量空间 } (2)class system {public: System() //成员函数 } Private: {

9、 //数据成员 } 2.循环结构: (1) switch语句 switch语句,它也称为多选择语句。它可以根据给定的条件,从多个分支语句序列中选择执行一个分支的语句序列。switch语句的一般格式为: switch(表达式) { case常量表达式1:语句; break; …… case常量表达式n:语句;   default:语句;} (2)for语句 这种循环语句不仅用于循环次数已知的情况,还能用于循环次数预先不能确定只给出循环结束条件的情况下。 for 语句的一般形式: for (表达式1;表达式2;表达式3

10、 {语句; //循环体} (3)do……while语句 Do 循环体 While(条件表达式) 当流程到达do后,立即执行循环体语句,然后再对表达式进行测试。若条件表达式的值为真,则重复循环,否则退出。 2.2 程序框图 成绩管理系统 输入学生成绩 显示学生成绩 修改学生成绩 删除学生成绩 成绩排序 计算总分平均分 查询学生成绩 退出 2.3程序模块 2.3.1主程序模块 void main() { SYSTEM person; } 2.3.2添加模块 “学生成绩管理系统”包括几个模块:添加学生成绩,显示学生成绩,查询学生成绩、修改学

11、生成绩、删除学生成绩、将学生成绩进行排序,最后退出程序 主要程序的模块说明: 1)查询学生成绩模块 void SYSTEM::search()//查询 case 1://按照学号查询 {for( ) if(stu[i].number==num ) { 输出学生成绩 break; } if(stu[i].number!=num) cout<<"未找到该学生信息!!"<

12、number==num) { 输入新的学生成绩 break; } if(stu[i].number!=num) cout<<"无此学生信息!!"<

13、h (k) { case 1://按学生总分排序 { for( ) for( ) { if( ) {冒泡排序法} } } }break; case 2://按学生平均分排序 方法同上 5)各个模块之间的关系如下: 主程序模块 ↙ ↙ ↓ ↘ ↘ ↘ 添加 查询 显示 修改 删除 排序 ↙ ↘ ↙ ↘

14、 按学号 按姓名 按总分 按平均分 3.详细设计 3.1声明一个名为student的结构体类型并且定义变量 struct Student { string name; long number; double shuxue; double yingyu; double Cyuyan; double tiyu; double ZF; double PJF; }; 3.2 声明类system且构造函数 class SYSTEM {public: SYSTEM(){

15、n=0;} //构造函数 void add();//添加 void show();//显示 void search();//查询 void change();//修改 void del();//删除 void PX();//排序 private: Student stu[1000];//定义一个结构体类型student的变量stu,其最大值为1000 int n; }; 3.3 调用添加函数 void SYSTEM::add()//添加 { cout<<"学号:"<>stu[n].number; cout<<"姓名:"<

16、cin>>stu[n].name; cout<<"数学:"<>stu[n].shuxue; cout<<"英语:"<>stu[n].yingyu; cout<<"C语言:"<>stu[n].Cyuyan; cout<<"体育:"<>stu[n].tiyu; stu[n].ZF= stu[n].shuxue+ stu[n].yingyu+ stu[n].Cyuyan+ stu[n].tiyu; stu[n].PJF=( stu[n].shuxue+ stu[n].yingyu+ stu[n].C

17、yuyan+ stu[n].tiyu)/4; n++;//学生个数增加一个} 3.4 调用查询函数 void SYSTEM::search()//查询 { cout<<"请选择查询方式:"<>c; switch (c) { case 1://按照学号查询 { long num; cout<<"请输入要查询的学号:"<>num; for(i=0;i

18、num) { cout<<"学号 姓名 数学 英语 C语言 体育 总分 平均分"<

19、按学号查询相似 3.5调用显示函数 void SYSTEM::show()//显示 { cout<<"学号 姓名 数学 英语 C语言 体育 总分 平均分"<

20、函数 void SYSTEM::change() //修改 { long num; cout<<"请输入要修改的学生学号:"<>num; for(int i=0;i

21、].Cyuyan<<" "<>stu[i].number;stu[n].number=stu[i].number; cout<<"姓名:"<>stu[i].name;stu[n].name=stu[i].name; cout<<"数学:"<>stu[i].shuxue;stu[n].shuxue=stu[i].shuxue; cou

22、t<<"英语:"<>stu[i].yingyu;stu[n].yingyu=stu[i].yingyu; cout<<"C语言:"<>stu[i].Cyuyan;stu[n].Cyuyan=stu[i].Cyuyan; cout<<"体育:"<>stu[i].tiyu;stu[n].tiyu=stu[i].tiyu; stu[i].ZF= stu[i].shuxue+ stu[i].yingyu+ stu[i].Cyuyan+ stu[i].tiyu; stu[i].PJF=( stu[i].shuxue+ stu[i

23、].yingyu+ stu[i].Cyuyan+ stu[i].tiyu)/4; break; } if(stu[i].number!=num) cout<<"无此学生信息!!"<

24、除学生的学号,然后按回车确认:"<>num; for(int i=0;i

25、 3.8 调用排序函数 void SYSTEM::PX() //排序 {cout<<"请选择排序方式:"<>k; switch (k) { case 1://按学生总分排序 { Student p; //定义一个Student类型的变量p for(int i=0;i

26、stu[j].ZF

27、

28、do-while循环语句是先执行循环体里的语句,再进行判断,如果不符合while条件(即b<7)时要执行一次循环体,直到b的值大于或等于7是才退出循环。 { cout<<"***************************************************************************"<

29、t<<" 3.显示 "<>b; switch

30、b) { case 1: cout<<"请依次输入该学生的相关信息:"<

31、 person.PX(); break; case 7: cout<<"谢谢使用本系统!!!"<

32、但是在定义学生成绩管理是直接使用结构体去定义,设定了好几个数组,在现实生活中使用,数据多的情况下显得非常麻烦。 5.测试结果 5.1主菜单 图5-1 5.2 添加学生成绩 图5-2 图5-3 图5-2,5-3是输入两个学生的成绩,题目中以依次输入7个学生成绩为例 5.3 查询学生成绩 图5-4 按学号查询 图5-5 按姓名查询 5.4显示学生成绩 图5-6 5.5修改学生成绩 图5-7

33、 图5-8 显示修改后的所有学生成绩 5.6删除学生成绩 图5-9 5.7对学生成绩排序 图5-10 按总分排序 图5-11 按平均分排序 5.8退出 图5-12 5.9源程序文件名清单 #include #include 6附录 总 结 通过这次的课程设计,我巩固了以往学过的知识。第一次尝试着将以前学过的东西按照自己的想法写出来。虽然写的代码还显得幼稚也不成熟,但我觉得这是一次新的尝试。对于自己开说也是一个挑战。培养了编程能力,为后续课程的学习提供知识和能力支撑。 回顾

34、起此次课程设计,至今我们仍感慨颇多综合起来,主要体现在以下几个方面: 首先,对数据结构的掌握还不够。虽然完成了程序,但是只用到了基本的结构体、数组和类,以及一些简单的循环语句,像for循环,do……while语句和switch ……case选择语句。只覆盖了书上很少的知识,例如链表,指针之类的知识都没有用到。 其次,在程序整体的设计上还不够完善,编写的程序是通过手动输入学生的各个成绩,调试时只是输入七组数据做实验,一旦有几千个数据通过这样的程序来运行时非常不可取的。 但是,我觉得该程序还有很大的改进空间,譬如可以用多文件做,这样功能更强大,也便于以后更好地改进和完善程序;而在程序的内容方

35、面,还能增加更多功能,以满足不同需要的各种要求。  当然,值得欣慰的是,该程序基本完成里设计要求,并能顺利运行,界面清晰易理解,且具备各项基本功能,易于操作。比如在做查询的时候,按照学号、姓名查询,做排序的时候,按照总分、平均分排序的思想就考虑的非常全面,基本能够满足不同使用者的需求。 在写课程设计的过程中,和同学之间的交流也让我受益良多。在写代码时教了我许多也启发了我很多。让我能够一遍遍的不断完善。通过一个学期的学习,我认为要学好数据结构这门课程,不仅要认真阅读课本知识,更重要的是要通过上机实践才可以学以致用。总之,这次课程设计是我真正的去做的一个系统,肯定会有很多不足,但是我很欣慰。

36、 致 谢 这次的课程设计最终能够顺利的完成,许多人给了我很大的帮助。首先,我要谢谢淮阴工学院计算机工程系给我提供了这次难得的实践机会,以及实验室人员提供的方便舒适的实验环境!其次,我要谢谢这次课程设计的辅导老师给予我的帮助和辛勤指导,以及和我一起合作的同学的共同互助。在设计过程中,我遇到了诸多的困难与麻烦,若没有他们的悉心指导与共同研讨,我也不能这么顺利的完成本次的课程设计,在这里衷心得对他们表示深深的谢意,谢谢!最后,我要谢谢我的其他同学,多谢他们给我所提的建议以及他们给予我的帮助。当然,在本次课程设计的完成过程中,我也参考了很多资料参考书,以及浏览了很多网站。所以我也要谢谢这些书籍

37、的著作者,及各网站提供信息的作者们。在这里还要特别谢谢网站给我的指导和帮助。同时谢谢淮阴工学院图书馆,给我提供了丰富的书籍资料! 参考文献 1 严蔚敏,吴伟民. 数据结构(C语言版).清华大学出版社   2 殷人昆. 数据结构(C++版).清华大学出版社   3 金远平. 数据结构(C++描述).清华大学出版社   4 许卓群.数据结构与算法.高等教育出版社    5 Frank M.Carrano . 数据结构与C++高级教程.清华大学出版社   19 指导教师评语 学号 1114101128 姓名 陆君 班级 计科1111 选题 名称 学生

38、成绩管理 序号 评价内容 权重(%) 得分 1 考勤记录、学习态度、工作作风与表现。 5 2 自学情况: 上网检索机时数、文献阅读情况(笔记)。 10 3 论文选题是否先进,是否具有前沿性或前瞻性。 5 4 成果验收: 是否完成设计任务;能否运行、可操作性如何等。 20 5 报告的格式规范程度、是否图文并茂、语言规范及流畅程度;主题是否鲜明、重心是否突出、论述是否充分、结论是否正确;是否提出了自己的独到见解。 30 6 文献引用是否合理、充分、真实。 5 7 答辩情况: 自我陈述、回答问题的正确性、用语准确性、逻辑思维、是否具有独到见解等。 25 合计 指导教师(签章): 年 月 日

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

关于我们      便捷服务       自信AI       AI导航        抽奖活动

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

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

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

关注我们 :微信公众号    抖音    微博    LOFTER 

客服