数据结构课程设计——学生成绩管理系统报告书.pdf

上传人:1398****507 文档编号:73531024 上传时间:2023-02-19 格式:PDF 页数:13 大小:352.67KB
返回 下载 相关 举报
数据结构课程设计——学生成绩管理系统报告书.pdf_第1页
第1页 / 共13页
数据结构课程设计——学生成绩管理系统报告书.pdf_第2页
第2页 / 共13页
点击查看更多>>
资源描述

《数据结构课程设计——学生成绩管理系统报告书.pdf》由会员分享,可在线阅读,更多相关《数据结构课程设计——学生成绩管理系统报告书.pdf(13页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、文档从互联网中收集,已重新修正排版,word 格式支持编辑,如有帮助欢迎下载支持。课程设计报告书课程设计报告书设计名称:设计名称:数据结构(C+版)题题目:目:学生成绩管理系统学生姓名:学生姓名:XXX专专业:业:计算机科学与技术班班别:别:计科本 XXX 班学学号:号:XXXXXX指导老师:指导老师:XXX日日期:期:2012年 7月 12日一问题描述:一问题描述:设计目的:设计目的:1.掌握线性链表的建立。2.掌握线性链表的基本操作。3.掌握查找的基本算法。设计内容:设计内容:利用线性链表实现学生成绩管理系统,具体功能:输入、输出、插入、删除、查找、追加、读入、显示、退出,并能在屏幕上输出

2、操作前后的结果。二基本要求二基本要求1.写出系统需求分析,并建模。2.编程实现,界面友好。3.输出操作前后的结果。三工具三工具/准备工作准备工作在此次课程设计中,我们用到了Microsoft Visual C+V6.0,所以在开始课程设计0word 格式支持编辑,如有帮助欢迎下载支持。文档从互联网中收集,已重新修正排版,word 格式支持编辑,如有帮助欢迎下载支持。前我们首先要安装好这个软件。此外,在开始编程之前要做好相应的系统构思,以及想好实现相应的功能的算法。四分析与实现四分析与实现1.1.系统功能分析系统功能分析本系统主要实现对学生成绩信息进行管理,需要实现以下几个方面的管理功能:(0)

3、创建学生成绩信息:输入学生的信息。(1)查找学生成绩信息:按学号、姓名查找。(2)修改学生成绩信息:找到要修改的学号,修改相应信息。(3)追加学生成绩信息:找到要追加的学生成绩的学号,对相应科目的成绩进行追加。(4)显示学生成绩信息:显示全部学生的成绩信息(5)插入学生成绩信息:插入一个新的学生。(6)删除学生成绩信息;按学号、姓名删除。目或者总分排序。2.2.系统模块结构图系统模块结构图学生成绩管理系统学生成绩管理系统输入学生成绩按学号查询成绩按姓名查询成绩修改学生成绩信追加学生成绩显示全部学习信插入学生成绩信删除学生信息3.3.模块分析:模块分析:3.13.1 系统首页:系统首页:功能介绍

4、:输入相应功能序号即可进行相应的功能操作。图图 1.1.系统首页系统首页相应的代码:#include#include#includeusing namespace std;#define MAX 100typedef struct studentint num;char name20;int english;int chinese;int math;1word 格式支持编辑,如有帮助欢迎下载支持。文档从互联网中收集,已重新修正排版,word 格式支持编辑,如有帮助欢迎下载支持。int total;int length;struct student*next;s,*LinkList;int ma

5、in()coutttt欢迎登录学生成绩管理系统!endl;coutttt+-+endl;coutttt|序号|请选择相应的操作功能的序号:|endl;coutttt+-+-+endl;coutttt|0|请输入学生的相关信息与成绩:|endl;coutttt+-+-+endl;coutttt|1|按学生学号查询学生成绩:|endl;coutttt+-+-+endl;coutttt|2|按学生姓名查询学生成绩:|endl;coutttt+-+-+endl;coutttt|3|追加学生的成绩信息:|endl;coutttt+-+-+endl;coutttt|4|显示全部学生的信息:|endl;co

6、utttt+-+-+endl;coutttt|5|插入学生信息:|endl;coutttt+-+-+endl;coutttt|6|修改学生信息:|endl;coutttt+-+-+endl;coutttt|7|删除学生信息:|endl;coutttt+-+-+next=NULL;char ch,ch2;while(flag)cout请输入你要进行的操作数:ch;while(ch7|ch0)cout输入有误,请重新输入ch;switch(ch)case 0:input(l);cout学生的基本信息存储成功endl;break;case 1:check(l);break;case 2:check_

7、name(l);break;case 3:add(l);break;2word 格式支持编辑,如有帮助欢迎下载支持。文档从互联网中收集,已重新修正排版,word 格式支持编辑,如有帮助欢迎下载支持。case 4:output(l);break;case 5:insert_stu(l);break;case 6:xiugai(l);break;case 7:Delete_stu(l);break;cout你要继续操作还是退出(y/n)ch2;while(flag1)if(ch2=Y)|(ch2=y)flag=1;flag1=0;else if(ch2=N)|(ch2=n)/flag=0;/fla

8、g1=0;else flag1=1;cout输入有误,请重新输入(y/n)(y:继续)(n:退出)!ch2;return 0;3.23.2 输入学生信息输入学生信息功能介绍:输入0,选择进入输入学生信息功能中,输入想输入的学生信息个数,并输入相应的学生信息。图 2.输入信息相关代码:int InitLink(LinkList&L)/输入学生信息L=(LinkList)malloc(sizeof(struct student);L-next=NULL;return 0;int input(LinkList&L)int i,n;L-next=NULL;LinkList p;3word 格式支持编辑

9、,如有帮助欢迎下载支持。文档从互联网中收集,已重新修正排版,word 格式支持编辑,如有帮助欢迎下载支持。LinkList q;cout请输入学生人数:n;L-length=n;cout请输入学生的基本信息:endl;for(i=0;ilength;i+)p=(LinkList)malloc(sizeof(student);coutp-num;coutendl;coutp-name;coutendl;coutp-english;coutendl;coutp-chinese;coutendl;coutp-math;couttotal=p-english+p-chinese+p-math;cout

10、+-+endl;cout学号:姓名:英语:语文:数学:总成绩:endl;coutnum name english chinesemath totalendl;cout+-+next=NULL)L-next=p;p-next=NULL;q=p;elsep-next=NULL;q-next=p;q=p;/L=L-next;return 0;4word 格式支持编辑,如有帮助欢迎下载支持。文档从互联网中收集,已重新修正排版,word 格式支持编辑,如有帮助欢迎下载支持。3.33.3 显示学生全部信息显示学生全部信息功能简介:显示连表中的全部学生信息。图图 3.3.显示全部信息显示全部信息相关代码:i

11、nt output(LinkList&L)/显示全部信息LinkList p=L-next;if(L-next=NULL)cout链表中没有学生信息,请先输入学生信息!endl;elsecout+-+endl;cout学号:姓名:英语:语文:数学:总成绩:endl;while(p)coutnumnameenglishchinese math totalnext;cout+-+next;if(p=NULL)cout链表中没有学生信息,请先输入学生信息!endl;else cout请输入你要查找的同学的学号:n;while(p&p-num!=n)p=p-next;if(!p)cout链表中没有学号

12、为:n的同学信息!endl;else cout学号为:n的同学信息如下:endl;cout+-+endl;cout学号:姓名:英语:语文:数学:总成绩:endl;5word 格式支持编辑,如有帮助欢迎下载支持。文档从互联网中收集,已重新修正排版,word 格式支持编辑,如有帮助欢迎下载支持。coutnumnameenglishchinese math totalendl;cout+-+next;if(p=NULL)cout链表中没有学生信息,请先输入学生信息!endl;else cout请输入你要查找的同学的姓名:name;while(p&strcmp(p-name,name)/strcmp(

13、p-name,name)如果p-name=name,则比较的函数值为 0p=p-next;if(!p)cout链表中没有姓名为:namename:的同学信息!endl;else cout姓名为:name=name:的同学信息如下:endl;cout+-+endl;cout学号:姓名:英语:语文:数学:总成绩:endl;coutnumnameenglishchinese math totalendl;cout+-+next;if(p=NULL)6word 格式支持编辑,如有帮助欢迎下载支持。文档从互联网中收集,已重新修正排版,word 格式支持编辑,如有帮助欢迎下载支持。cout链表中没有学生信

14、息,请先输入学生信息!endl;else cout请输入你要追加的同学成绩的学号:n;while(p&p-num!=n)p=p-next;if(!p)cout链表中没有学号为:n的同学信息!endl;else cout请输入要追加的成绩:(相应的追加分数分别为英语 i,语文 j,数学 k,若是不追加,请输入 0.)endl;couti;coutendl;coutj;coutendl;coutk;coutenglish+=i;p-chinese+=j;p-math+=k;cout学号为:n的同学信息如下:endl;cout+-+endl;cout学号:姓名:英语:语文:数学:总成绩:endl;c

15、outnumnameenglishchinese math totalendl;cout+-+next;if(p=NULL)cout链表中没有学生信息,请先输入学生信息!endl;else cout请输入你要修改的同学成绩的学号:n;while(p&p-num!=n)p=p-next;if(!p)cout链表中没有学号为:n的同学信息!endl;else cout+-+endl;cout学号:姓名:英语:语文:数学:总成绩:endl;coutnumnameenglishchinese math totalendl;cout+-+endl;cout是否要修改学号为n的同学的信息?(y/n)x;i

16、f(x=Y)|(x=y)coutp-name;coutendl;coutp-english;coutendl;coutp-chinese;coutendl;coutp-math;couttotal=p-english+p-chinese+p-math;cout学号为n的同学修改后的信息为:endl;cout+-+endl;cout学号:姓名:英语:语文:数学:总成绩:endl;coutnumnameenglishchinese math totalendl;cout+-+next=NULL)cout链表中没有学生信息,请先输入学生信息!endl;elsecout请输入你要在链表第 i 个位置中

17、插入学生信息的 i 值:i;p=L;while(p&jnext;+j;if(!p|ji-1)cout输入 i 值小于 1 或者大于表长+1,请重新输入!endl;flag=1;else flag=0;s=(LinkList)malloc(sizeof(student);cout请输入学生的基本信息:endl;coutp-num;coutendl;coutp-name;coutendl;coutp-english;coutendl;coutp-chinese;coutendl;coutp-math;couttotal=p-english+p-chinese+p-math;9word 格式支持编辑

18、,如有帮助欢迎下载支持。文档从互联网中收集,已重新修正排版,word 格式支持编辑,如有帮助欢迎下载支持。cout插入的学生信息为:endl;cout+-+endl;cout学号:姓名:英语:语文:数学:总成绩:endl;coutnumnameenglishchinese math totalendl;cout+-+next=p-next;p-next=s;return 0;3.73.7 删除学生信息删除学生信息功能介绍:删除某个学生的信息。相关代码:int Delete_stu(LinkList&L)/删除学生信息int n;char x;LinkList q=L,p=L-next;if(p

19、=NULL)cout链表中没有学生信息,请先输入学生信息!endl;else cout请输入你要查找的同学的学号:n;while(p&p-num!=n)q=p;p=p-next;if(!p)cout链表中没有学号为:n的同学信息!endl;else cout学号为:n的同学信息如下:endl;cout+-+endl;cout学号:姓名:英语:语文:数学:总成绩:endl;coutnumnameenglishchinese math totalendl;cout+-+endl;cout是否要删除该同学信息?(y/n)x;if(x=Y)|(x=y)p=p-next;q-next=p;10word

20、格式支持编辑,如有帮助欢迎下载支持。文档从互联网中收集,已重新修正排版,word 格式支持编辑,如有帮助欢迎下载支持。cout该学生信息已删除!endl;return 0;五测试与结论五测试与结论1.1.系统测试结果如下:系统测试结果如下:1.11.1 系统首页:系统首页:功能介绍:输入相应功能序号即可进行相应的功能操作。图图 1.21.2 系统首页系统首页1.21.2 输入学生信息输入学生信息功能介绍:输入0,选择进入输入学生信息功能中,输入想输入的学生信息个数,并输入相应的学生信息。图图 2.22.2 输入学生信息输入学生信息1.31.3 显示学生全部信息显示学生全部信息功能简介:显示连表

21、中的全部学生信息。图图 3.23.2 显示全部信息显示全部信息1.41.4 追加学生信息追加学生信息图图 4.24.2 追加学生信息追加学生信息1.51.5 修改学生信息修改学生信息功能介绍:修改相应学号学生信息。图图 5.25.2 修改学生信息修改学生信息1.61.6 插入学生信息插入学生信息功能介绍:在链表的第 i 个节点插入学生信息。相关代码:图图 6.26.2 插入学生信息插入学生信息1.71.7 删除学生信息删除学生信息功能介绍:删除某个学生的信息。图图 7.27.2 删除学生信息删除学生信息2.2.结论结论本课程设计学生成绩管理系统从最后的测试结果来看,基本上实现了成绩管理系统的几

22、大功能:成绩信息输入、成绩信息显示等。并达到操作过程中的直观、方便、实用、安全等要求。系统采用模块化程序设计的方法,既便于系统功能的组合和修改,又便于未参与系统开发的技术维护人员补充和维护。本系统经过测试,证明其运行是稳定、可靠的。但在系统设计中也也遇到很多的问题,并且本系统的功能还需要不断的完善和改进,在以后空闲时间里逐一进行完善,使系统功能更加完善。11word格式支持编辑,如有帮助欢迎下载支持。文档从互联网中收集,已重新修正排版,word 格式支持编辑,如有帮助欢迎下载支持。六课程设计总结六课程设计总结此次数据结构课程设计,从编辑程序到测试,从理论到实践,我学到了很多很多的的东西,不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到很多问题,但经过老师的耐心指导和我自己的努力,问题都一一解决了!此外在设计的过程中还发现了自己的很多不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计之后,对数据结构有了深入的认识和理解,把以前所学过的知识都重新温故了一遍。12word 格式支持编辑,如有帮助欢迎下载支持。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁