欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    学生成绩信息管理系统完整版.docx

    • 资源ID:9377516       资源大小:106.64KB        全文页数:19页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    学生成绩信息管理系统完整版.docx

    1、学生成绩信息管理系统完整版 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】学生成绩信息管理系统学生成绩信息管理系统附录2:顺序表结构化设计源程序清单. . .261 引 言 设计目的与要求该学生信息管理系统采用C+语言开发研制,针对学生成绩及其数据特点,可以全面实现对学生成绩的插入、查询、修改、删除和输出等功能的计算机管理。它能使学生信息数据的工作人员从繁重的工作中解脱出来,大大减轻了工作量,减少人为的工作失误,全面提高学生信息管理的效率,从而使学校对于学生成绩的管理水平和技术水平跃上一个新的台阶。(1) 程序要添加适当的注释,程序

    2、的书写要采用缩进格式。(2) 程序要具在一定的健壮性,即当输入数据非法时,程序也能适当地做出反应,如插入删除时指定的位置不对等等。(3) 程序要做到界面友好,在程序运行时用户可以根据相应的提示信息进行操作。(4) 根据实验报告模板详细书写实验报告,在实验报告中给出链表根据姓名进行查找的算法和插入算法的流程图。设计内容定义一个包含学生信息(学号,姓名,成绩)的的顺序表和链表,使其具有如下功能: (1) 根据指定学生个数,逐个输入学生信息;(2) 逐个显示学生表中所有学生的相关信息;(3) 根据姓名进行查找,返回此学生的学号和成绩;(4) 根据指定的位置可返回相应的学生信息(学号,姓名,成绩);

    3、(5) 给定一个学生信息,插入到表中指定的位置; (6) 删除指定位置的学生记录;(7) 统计表中学生个数。2系统需求与功能分析 系统需求分析 (1) 能完成学生信息的插入、查询、修改、删除、输出等功能;(2)采用单链表与顺序表存储结构实现;(3) 所有数据以外部文件方式保存。系统功能分析(1)要设计一个学生成绩管理系统,其功能包括:插入函数Add():将学生成绩信息插入到链表中;查询函数Search():分别可以按学号和按姓名进行学生成绩查询;删除函数Delete():当需要删除的学号和姓名一致时则删除对应的学生记录;修改函数Modify():修改指定的学生成绩信息;输出函数Show():输

    4、出全部学生成绩信息;菜单函数Menu():为程序的菜单函数为实现各种功能提供便捷;读取数据函数Read():从外部文件读取学生成绩信息;保存数据函数Save():将数据保存到外部文件中。3总体结构设计系统的结构设计通过对学生信息管理系统的功能分析,可以定义出系统的总体结构模块图,如图所示。图学生管理系统总体结构设计系统管理流程图 前面的分析中已经定义了系统各个模块,属于静态建模的范围。在系统运行时刻的动态模型应该由系统的流程决定。当用户运行该系统后可以来进行学生信息插入管理、学生信息查询管理、学生信息删除管理、学生信息修改管理及学生信息输出等操作,具体的流程如图所示。图系统流程图主模块应负责应

    5、用程序的主界面,由它调用其他模块.因此主模块应具有操作性好、界面清晰的特点,使用户能够很方便地找到所需功能。根据功能需求的结果分析,主界面应该由学生信息插入管理,学生信息查询管理、学生信息修改管理、学生信息删除管理和学生信息输出管理组成,可以通过输入相应的数字进入相应的功能模块。4 链表学生信息管理系统详细设计和系统实现系统总体设计完成后,就可以根据需求对各个模块来进行实现了。在本系统中需要编码实现的主要有学生信息插入、学生信息查询、学生信息修改、学生信息删除和学生信息输出等5个模块。(1)学生信息插入模块添加的信息包括学号(不允许重复)、姓名(不允许重复)、分数。流程图如下图所示。图插入模块

    6、流程图本程序采用的是尾插法,就是每次将新申请的结点插在终端结点的后面,其执行过程如图所示。图尾插法建立单链表操作示意图(2)学生信息查询模块按姓名和学号查找学生信息的流程图分别如下图所示。图按姓名查找学生信息流程图在单链表中,即使知道被访问结点的位置i,也不能像顺序表那样直接按序号访问,而只能从头指针出发,设置一个工作指针p,顺next域逐个结点往下搜索。当p指向某个结点时判断是否为第i个结点,若是则查找成功;否则,将工作指针p后移,即将p指向原来所指结点的后继结点。直到p为NULL时查找失败。单链表查找过程如图所示。图单链表查找过程的示意图按学号查询学生信息同按姓名查找学生信息,此处不再详细

    7、列出。(3)学生信息修改模块首先要查找与要修改数据相匹配的信息,若没有则返回失败。否则把相应的信息输出,然后再重新输入新的数据并保存到单链表。(4)学生信息删除模块当选择删除功能时,首先输入要删除的同学的姓名,然后输入要删除的同学的学号,如果该同学存在并且姓名与学号匹配的上,则进行删除操作,否则返回失败。其流程图如下:图删除学生信息模块流程图删除操作定义为将单链表的第i个结点删去。因为在单链表中结点ai存储地址在其前驱结点ai-1的指针域,所以必须首先找到ai-1的存储地址p,然后令p的next域指向ai 的后继结点,即把结点ai 从链上摘下来,最后释放结点ai的存储空间,如图所示。 图在单链

    8、表中删除结点指针的变化情况(5)学生信息输出模块从单链表表头遍历整个单链表,将所有数据输出。其部分代码如下: void Function:Show() char choose; Student *temp; system(cls); temp=Student_First-Next; if(!temp) cout文件无数据nn endl; cout1.返回主菜单choose; while(choose!=1) cout1.返回主菜单choose; Menu(); else coutOut(); temp=temp-Next; cout1.返回主菜单choose; while(choose!=1)

    9、 cout1.返回主菜单choose; Menu(); 5 系统测试在完成了系统各方面的设计后,并不是可以运行就完成的,为了保证系统性能的稳定性跟安全性等,就要对系统做测试。测试环境如下: 硬件:P4C ,80GB硬盘,512M内存; 软件:Windows XP Personal SP2,分辨率1024*768,Microsoft Visual C+ 。1.这是链表的主界面2.这是顺序表的主界面图运行主界面我就以顺序表为例介绍一下我的学生信息管理系统吧选择1清空学生信息功能时,如图所示。图插入学生成绩信息实现返回主菜单后选择3插入学生成绩信息,4删除学生信息,运行结果按由姓名特定位置删除和按学

    10、号删除两种分别如图和图所示。图按学生学号查找相关信息实现图按学号查找相关信息实现当在主菜单中选择4时,则进行删除功能。其运行结果如图所示。图 删除学生信息功能实现当在主菜单中选择6时,则进行显示当前信息功能。其运行结果如图所示。图输出学生信息功能实现6 结束语通过这次数据结构课程设计的实验,在解决问题的过程中,充分体会到了数据结构这门课程对于软件设计的重要性,也体会到了数据结构+算法=程序这句话的真正含义,一个实际问题的解决第一步就是要依赖于良好的抽象思维的,将实际问题转化为相应的数据结构,只有这一步做好了,才能采取相应的算法和优化方法解决问题和解决好问题。参考文献1 钱新贤,杨猛,程兆炜,张

    11、少东Visual C+编程疑难详解M 北京:人民邮电出版社,2000 2 王红梅,胡明,王涛数据结构(C+)M 北京:清华大学出版社,2007 3 程学先数据库原理与技术M北京:中国水利水电出版社,2001 4 Alex Kriegel & Boris SQL BibleM北京:电子工业出版社,20005 郑章,程刚,张勇Visual C+数据开发技术M北京:机械工业出版社,6 and . C+ Annotations. Version 4.4.0m,ICCE,University of Groningen,Netherlands,1990. 250280附录1:链表结构化设计源程序清单回主菜

    12、单choose; while(choose!=1) cout1.返回主菜单choose; Menu();void Function:Delete() 回主菜单n2.继续删除choose; while(choose!=1&choose!=2) cout1.返回主菜单n2.继续删除choose; if(choose=1) Menu(); else if(choose=2) Delete(); void Function:Modify() 回主菜单n2.继续修改choose; while(choose!=1&choose!=2) cout1.返回主菜单n2.继续修改choose; if(choose

    13、=1) Menu(); else if(choose=2) Modify();void Function:Read() 姓名查询n2.按学号查询n; cinchoose; if(choose=1) coutt1; while(temp) if(strcmp(t1,temp-GetName()=0) flag=1; break; temp=temp-Next; if(flag=0) coutn无该学生的信息nendl; else coutOut(); break; else if(choose=2) coutt2; while(temp) if(t2=temp-GetNo() flag=1; b

    14、reak; temp=temp-Next; if(flag=0) coutn无该学生的信息nendl; else coutOut(); break; while(choose!=1|choose!=2); coutn1.返回主菜单n2.继续查询choose; while(choose!=1&choose!=2) cout1.返回主菜单n2.继续查询choose; if(choose=1) Menu(); else if(choose=2) Search(); void Function:Show() char choose; Student *temp; system(cls); temp=S

    15、tudent_First-Next; if(!temp) cout文件无数据nn endl; cout1.返回主菜单choose; while(choose!=1) cout1.返回主菜单choose; Menu(); else coutOut(); temp=temp-Next; cout1.返回主菜单choose; while(choose!=1) cout1.返回主菜单choose; Menu(); void Function:Menu() time_t t; time(&t); char choose; system(cls); cout -版权所有:李卉-endl; coutendl

    16、; cout*endl; cout 平顶山学院欢迎你 endlendl; cout 学生成绩信息管理系统 endlendl; cout 显示系统时间和日期: ctime(&t)endl; cout*endlendl; cout请选择您需要的操作,选择相关操作请输入相对的括号里的阿拉伯数字!endl; coutn; cout 1 录入学生成绩信息:nendl; cout 2 查询学生成绩信息:nendl; cout 3 删除学生成绩信息:nendl; cout 4 修改学生成绩信息:nendl; cout 5 显示全部学生成绩信息:nendl; cout 6 退出系统endl; coutchoo

    17、se; switch(choose) case 1: Add();break; case 2: Search();break; case 3: Delete();break; case 4: Modify();break; case 5: Show();break; case 6: exit(1);break; default: cout请按规定输入选择项!endl; Menu(); void main() Function function; o; coutendl; cout请输入第ii-1.name ; coutendl; cout请输入第ii-1.score ; coutendl; +

    18、; coutn本次操作您一共输入了m名数据n; return 1;.n; if(pos cout对不起,您要查找的学生不存在,请检查!n; return 0; cout以下是您要找的学生信息:nn; cout学生姓名:pos-1.nameendl; cout学生学号:pos-1.No endl; cout学生成绩:pos-1.scoreendlendl; return 1;/删除操作/int dele_elem1(sqlist &sl,int pos,student &elem) coutpos; if(pos cout您要删除的元素不存在,请检查!n; return 0; struct st

    19、udent *p,*q; p=&pos-1); elem=*p; q=+; for(+p;p=q;+p) *(p-1)=*p; ; cout已删除,请检查输出!nn; return 1;int dele_elem2(sqlist &sl,char *num,student &elem) student *q,*p; p=; q=+; int flag=0; for(p;pNo)=0) elem=*p; flag=1; if(flag)break; if(flag) for(+p;p=q;+p) *(p-1)=*p; ; cout已删除!检查输出看是否符合您的要求!nn; return 1; e

    20、lse cout不存在该学号代表的学生信息!n; return 0; /输出/int out_list(sqlist sl) if=0) coutnn现在还没有任何信息或信息被删除!您可以先建立顺序表!nn; return 0; else coutn这是您要求的信息显示:n; struct student *q; q=; int count=0; for(q;q+;q+) count+; coutendl; cout第count条:endl; cout学号:Noendl; cout姓名:nameendl; cout成绩:scoreendl; cout|n; cout共有信息条nn; /else return 1;


    注意事项

    本文(学生成绩信息管理系统完整版.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

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


    收起
    展开