学生成绩管理数据结构课程.doc
《学生成绩管理数据结构课程.doc》由会员分享,可在线阅读,更多相关《学生成绩管理数据结构课程.doc(26页珍藏版)》请在咨信网上搜索。
1、计算机工程学院实 践 报 告课程名称:数据结构课程设计设计题目: 学生成绩管理 院 系: 数理学院 专 业: 信息与计算科学 组 别: 28 学生姓名: 陆君 学号: 1114101128 起止日期: 2013年 7月 1日2013 年 7月5日 指导教师: 周海岩 寇海洲 学年学期: 2012 2013 学年 第 2 学期设计任务书课题名称学生成绩管理设计目的综合运用程序设计、算法设计的方法,对实际应用中的问题进行数据分析和组织、算法设计和分析、程序设计和调试等环节,将理论与实践相结合,掌握利用计算机解决实际问题的基本方法和基本步骤,培养学生良好的程序设计风格、算法设计和分析能力。实验环境P
2、 IV以上计算机,Window XP以上操作系统;编程语言不限。任务要求要求学生结合课程体系的实际需求及实践能力、实验条件等外部因素,完成学生成绩管理课题的设计任务。课题功能:1)实现对学生成绩的录入;2)对输入的数据进行查询、修改、删除、排序等操作;任务要求:1)界面友好,函数功能要划分好;2)总体设计应画流程图;3)程序要加必要的注释。4)学生完成设计任务后,按要求提交算法设计报告,设计报告规范化,并能够反映算法设计的实际内容。工作进度计划序号起止时间工 作 内 容116周制定课程设计计划,编写课程设计指导书21318周下发任务,学生选题,分组,查阅资料319周上机系统调试,课程设计报告,
3、课程设计答辩420周上交报告电子及打印文档指导教师:周海岩 年 月 日 摘要:学生成绩管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强,数据安全性强,数据安全性好的库。而对于后者则要求应用程序功能完备易使用等特点。该系统主要实现,添加、修改、删除、读出、写入、查找、排序、计算总分、平均分、分类汇总等功能。系统的核心是添加、修改和删除三者之间的联系,每个表的修改都将联动的影响其他的表,当完成添加或删除操作时系统会自动地完成学生成绩的修改。查询功能也是系统的核心之一,在系统中主要根据学生姓名和学号进行
4、查询,其目的就是为了方便用户使用。系统有完整的用户添加、修改、删除和密码修改功能,并具备报表打印功能。关键词:添加;修改;删除;查找;排序;总分;平均分目录1 需求分析:11.1任务及要求11.2程序设计思想11.3实现功能12 概要设计:22.1线性顺序表的抽象数据定义:32.2程序框图32.3程序模块33 详细设计:53.1声明一个student的结构体类型并且定义变量53.2声明类system且构造函数63.3调用添加函数63.4调用查询函数73.5调用显示函数73.6调用修改函数83.7调用删除函数93.8调用排序函数93.9 dowhile判断是否循环114 调试分析:125 测试结
5、果:135.1主菜单135.2添加学生成绩135.3查询学生成绩145.4显示学生成绩145.5修改学生成绩155.6删除学生成绩155.7对学生成绩排序155.8退出165.9源程序文件名清单166 附录:171需求分析1.1 任务及要求该系统主要实现,添加、修改、删除、读出、查找、排序、计算总分、平均分、分类汇总等功能。1.2 程序设计思想该系统需要解决多个问题,数据类型特征并不都相同。为了解决问题的方便化,采用结构体来做程序。并且很多数据在输出时采用了循环语句人为完成。1.3 实现功能1)录入数据:将学生学号、姓名、成绩写入文件。2)增加人员:增加学生,并将学生姓名、学号和成绩写入文件。
6、3)删除人员:删除学生信息和成绩。4)修改数据:修改学生成绩。5)按学号查询:根据学号查询学生成绩,包括平均分。6)按姓名查询:根据学生姓名查询学生成绩,包括总分和平均分。7)输出所有学生成绩。8)按照总分、平均分从高到低排序。2概要设计2.1 涉及到的基础知识所用到的基础知识有结构体和简单的do-while循环语句和“break”跳出循环语句同时还有多处用到了for循环语句。通过多个函数的结合完成预期的结果。1.结构、类和构造函数声明结构类型时,首先指定关键字struct和结构名,然后用一对花括号将若干个结构成员数据类型说明括起来。(1).Struct student /声明一个名为stud
7、ent的结构体类型/定义变量;int main()/定义student的结构变量,分配变量空间(2)class systempublic:System() /成员函数Private: /数据成员2循环结构:(1) switch语句switch语句,它也称为多选择语句。它可以根据给定的条件,从多个分支语句序列中选择执行一个分支的语句序列。switch语句的一般格式为:switch(表达式) case常量表达式1:语句; break; case常量表达式n:语句; default:语句;(2)for语句这种循环语句不仅用于循环次数已知的情况,还能用于循环次数预先不能确定只给出循环结束条件的情况下。
8、for 语句的一般形式:for (表达式1;表达式2;表达式3)语句; /循环体(3)dowhile语句Do循环体While(条件表达式)当流程到达do后,立即执行循环体语句,然后再对表达式进行测试。若条件表达式的值为真,则重复循环,否则退出。2.2 程序框图成绩管理系统输入学生成绩显示学生成绩修改学生成绩删除学生成绩成绩排序计算总分平均分查询学生成绩退出2.3程序模块2.3.1主程序模块void main() SYSTEM person;2.3.2添加模块“学生成绩管理系统”包括几个模块:添加学生成绩,显示学生成绩,查询学生成绩、修改学生成绩、删除学生成绩、将学生成绩进行排序,最后退出程序主
9、要程序的模块说明:1)查询学生成绩模块void SYSTEM:search()/查询case 1:/按照学号查询for( ) if(stui.number=num ) 输出学生成绩 break; if(stui.number!=num)cout未找到该学生信息!endl;break;case 2:/按照姓名查询方法同上2)修改学生成绩模块void SYSTEM:change() /修改for( ) if(stui.number=num) 输入新的学生成绩break; if(stui.number!=num)cout无此学生信息!endl; 3)删除学生成绩void SYSTEM:del() /
10、删除输入新的学生成绩for( ) if(stui.number=num) for( ) 用后一个学生信息覆盖前一个学生信息,学生人数减少一个 break; 4)将学生成绩进行排序模块void SYSTEM:PX() /排序 switch (k) case 1:/按学生总分排序 for( ) for( ) if( ) 冒泡排序法 break; case 2:/按学生平均分排序方法同上5)各个模块之间的关系如下: 主程序模块 添加 查询 显示 修改 删除 排序 按学号 按姓名 按总分 按平均分3.详细设计3.1声明一个名为student的结构体类型并且定义变量struct Student stri
11、ng name; long number; double shuxue; double yingyu; double Cyuyan; double tiyu; double ZF; double PJF; ; 3.2 声明类system且构造函数 class SYSTEM public: SYSTEM()n=0; /构造函数void add();/添加void show();/显示void search();/查询void change();/修改void del();/删除void PX();/排序private:Student stu1000;/定义一个结构体类型student的变量stu
12、,其最大值为1000int n;3.3 调用添加函数void SYSTEM:add()/添加 cout学号:stun.number; cout姓名:stun.name; cout数学:stun.shuxue; cout英语:stun.yingyu; coutC语言:stun.Cyuyan; cout体育:stun.tiyu; stun.ZF= stun.shuxue+ stun.yingyu+ stun.Cyuyan+ stun.tiyu;stun.PJF=( stun.shuxue+ stun.yingyu+ stun.Cyuyan+ stun.tiyu)/4; n+;/学生个数增加一个3.
13、4 调用查询函数void SYSTEM:search()/查询cout请选择查询方式:endl;cout1.按学号查询endl; cout2.按姓名查询c; switch (c) case 1:/按照学号查询long num;cout请输入要查询的学号:num;for(i=0;in;i+) if(stui.number=num) cout学号 姓名 数学 英语 C语言 体育 总分 平均分endl;coutstui.number stui.name stui.shuxue stui.yingyu stui.Cyuyan stui.tiyu stui.ZF stui.PJFendl;break;
14、if(stui.number!=num)cout未找到该学生信息!endl;break;case 2:/按照姓名查询与按学号查询相似3.5调用显示函数void SYSTEM:show()/显示 cout学号 姓名 数学 英语 C语言 体育 总分 平均分endl; for(int i=0;in;i+) coutstui.number stui.name stui.shuxue stui.yingyu stui.Cyuyan stui.tiyu stui.ZF stui.PJFendl; 3.6 调用修改函数void SYSTEM:change() /修改long num; cout请输入要修改的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 成绩 管理 数据结构 课程
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。