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

    数据结构课程设计学分管理系统文档格式.docx

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

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

    数据结构课程设计学分管理系统文档格式.docx

    1、2015年12月1日 1 需求分析.22 总体设计.33 详细设计.4 4 小结.10 致谢.10 参考文献.10 源代码.111 需求分析学生学分管理系统是运行于计算机系统下的应用软件,主要用于对学生的学号、姓名以及各项学科学分进行录入、删除、修改、查询、排序、统计、存盘等操作,为学校的教师和学生提供了一个对学生学分进行管理和查看的平台,给用户提供了一个简单友好的用户接口,主要任务如下: 1.1查看所有学生信息根据菜单提示,选择该功能,能够逐条显示全部学生学分记录 1.2输入学生记录用户根据菜单提示选择输入学生记录选项,进行有关学生的学号、姓名、班级、基础课学分、专业课学分、选修课学分、人文

    2、类课学分以及实验课学分的录入。可一次性输入多条学生的学分信息记录。 1.3删除学生记录根据提示,用户输入要进行删除学生的学号,如果在不存在该学号,则显示没有找到该学生;如果在文件中有该学号的信息存在,则将该学号所对应的姓名、学号、班级、各科学分等在对应文件中加以删除。 1.4修改学生记录根据提示,用户输入要进行修改学分记录的学生的学号,如果在文件中不存在该学号,则显示没有找到该学生;如果在文件中有该学生的信息存在,则将提示用户选择要修改的某课程,当用户选择某课程的代码后,则将显示你所要修改的课程。然后提示用户选择是否继续进行修改操作。 1.5查询学生信息查询学生信息,分为根据学号查询和根据班级

    3、查询两个具体需求,菜单选项分别提示用户输入要查询学生信息的学号或班级,如果在磁盘文件中有对应的输入信息,则提示用户已找到,并逐项列出对应查找到的学生学分状况。 1.6根据学号排序学生记录该项功能根据学生的学号项进行排序,以便用户对学生学分状况有较为直观方便的了解,并能够让学号有规律排列的学生项,在显示时集中出现,让浏览者更加清楚明白。 1.7统计学生学分完成情况该项是统计各班学生的学分完成情况,可以很方便了解该班学生的学习水平。2 总体设计进行总体设计,以比较抽象的方式概括的确定系统如何完成预定的任务,进而确定组成系统的每个子程序的结构,从而将一个大的程序按功能分割成一些模块,是每个模块具有功

    4、能单一、结构清晰、接口简单易于理解的小程序,并且确定各个函数之间的调用关系。本系统主要应用结构化的设计思想,实现学生学分的输入、删除、修改、查询以及浏览等管理功能,各主要模块的数据均存储在文件中,因此包含对文件的读、写等基本操作。在软件开发过程中应用了高级语言程序设计中的基本控制结构,如选择、循环、顺序等结构。系统的设计方法是结构化设计方法,采用C语言进行开发。系统功能结构图,如图1所示。图1 系统结构图3 详细设计本系统采用主函数调用子函数的设计方法,先整体在逐步细化的过程,具体方法如下:在主函数前,进行子函数声明,如下:void menu();/菜单函数void to_menu();/返回

    5、菜单函数void view_data();/查看所有学生信息void save_data();/保存数据void add_data();/输入学生数据void read_data();/读取数据void delete_data();/删除数据void edit_data();/修改数据void query_data_no();/查找(按学号)void query_data_clas();/查找(按班级)void sort_data_no();/排序(学号)void tongji();/统计某班学生学分完成情况 3.1主函数设计编写主函数,主函数运行时,先调用void read_data()函数

    6、,将数据从文件读取到结构体数组中,再调用菜单函数void menu(),显示菜单选择项,设计一个while循环,让函数进入循环,设计switch函数,对菜单各项功能进行选择,使各项功能能够运行,最后退出循环,调用to_menu()函数,返回主菜单main() int fun; read_data(); menu(); while(1) printf(请输入功能号0-8:,&fun); scanf(%d switch(fun) case 0: break; / 退出 case 1: view_data();break; / 查看所有学生信息 case 2: add_data(); / 输入学生记

    7、录 case 3: delete_data(); / 删除学生记录 case 4:edit_data(); / 修改学生记录 case 5: query_data_no(); / 查询(学号) case 6:query_data_clas(); / 查询(班级) case 7:sort_data_no(); / 排序(学号) case 8:tongji(); /统计某班学生学分完成情况 default:printf(输入错误!); if(fun=0) break; to_menu(); 3.2子函数设计 3.2.1菜单函数设计菜单函数首先运行库函数system(cls)进行清屏,然后运行各个p

    8、rintf语句,显示主菜单,如图2所示。图2 系统主菜单 3.2.2返回主菜单函数设计设计字符c1,c2,用c1来接受第一次输入的回车,然后再次输入回车时,调用函数menu(),返回主菜单,来实现各次操作完成后返回主菜单的任务。 3.2.3查看所有学生信息函数设计设计for循环,定义i=0,学生总数为dd.count,利用for循环,可以显示所有学生已经记录的信息。如图3所示:图3 查看所有学生信息 3.2.4数据从结构体数组保存到文件的函数设计创建文件data.txt,利用for循环,把数据逐个写入文件。 3.2.5输入学生记录函数设计根据printf语句提示,逐个输入学号、姓名、班级,调用

    9、库函数strcpy(),把各个输入项,拷贝到数组中,再对各项分数进行赋值,如果大于最大值,则显示最大值,设计成循环模式,末尾提示是否继续添加数据,利用break终止循环,最后存盘,退出程序,显示主菜单。输入学号为106的学生信息后如图4所示。 图4 输入学生信息 3.2.6删除学生记录函数设计设计for循环以及库函数strcmp(),把输入的学号,跟已有的学号进行对比,如果没有相同的学号,则提示没有找到该学生,如果找到相同的学号,则把该学号以后的数据向前移动一位,再把学生总数减一,实现删除学生。删除过程如下图5和图6所示。图5 输入要删除的学生图6 删除后显示 3.2.7修改学生记录函数设计根

    10、据printf语句提示,输入要修改的学生的学号,设计for循环和库函数strcmp,对输入学号进行查找,如果没有查找到,显示没有找到该学生,如果能够查找到给学生,则进一步提示输入学生的姓名、班级,然后选择要修改的学生记录项,最后提示,是否继续录入,退出后可返回主菜单。修改过程如下图7和图8所示。图7 编辑学生信息窗口图8 修改学生信息完成 3.2.8查询学生记录函数设计查询学生记录分为,根据学生学号查询和根据班级查询该班所有学生的成绩,设计for循环和调用ctrcmp()函数,把要查询的结果进行显示,如果没有找到与输入匹配的字符,则显示没有找到该班级或没有找到该学生。查询显示如下图,根据学号查

    11、询如图9所示,根据班级查询如图10所示。图9 根据学号查询学生信息图10 根据班级查询学生信息 3.2.9排序函数设计设计while循环,用for循环和库函数strcmp将学号依次比较,然后用冒泡排序法将学号数据由小到大排列,并且各数据交换,完成排序。排序结果如下图11所示。图11 根据学号排序结果 3.2.10统计函数设计输入要统计的班级号,调用strcmp函数,查找相同班级号的学生数据,再设计for循环并调用strcmp函数,把差找出的学生数据,与要求完成的学分标准进行对比,统计出符合要求和不符合要求的学生个数,最后显示。统计结果如下图12所示。图12 根据班级统计结果4 总结本系统可以完

    12、成学生学分的录入、查询、修改、删除、排序以及班级总体水平的统计功能,但是对于系统的访问权限设置,访问途径(网络访问还是单机使用)等功能,还没有提出解决的方案,在这些问题上还有待于对系统的进一步开发完善。学分管理系统是介于学生管理者和学生之间的一个数据库平台,他让数据管理者可以方便的录入修改学生成绩,在管理过程中可以节省时间,增加工作效率,假如学生可以通过网络来进行查询,就可以避免学分改动而引发的矛盾,同时也可以给学生带来方便,因此在访问途径上可以设置为单机服务器管理,网络访问的数据库模式,来为学生和学校之间提供一个信息查询的平台。本系统的开发过程,主要利用了for循环、switch循环、库函数

    13、strcmp与strcpy等,在排序函数设计时,略显繁琐,有待于使用者在使用时,提出宝贵的意见和建议。通过对本程序的开发,让我了解到一个完整系统的开发过程,将一个大的工程问题可以细化到各个模块,让每个模块可以独立去完成各自的功能,最后用函数之间的调用来解决程序开发的全部问题,让我在以后开发程序的道路上更加拥有信心。致谢在这次数据结构课程设计中,我的老师和同学给了我及大的帮助。特别是我的指导老师陈广宏老师,还有我的小组组长王晶的耐心帮助,在此,我对他们表示感谢!感谢他们在我面对困难时给了我帮助和支持。也感谢那些给我帮助的所有同学!参考文献1 赵启兰库存管理M北京:高等教育出版社,20052 谭浩强,张基温C语言程序设计教程(第3版)M北京:高等教育出版社,20063 黄明、梁旭、万洪莉C语言课程设计M北京:电子


    注意事项

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

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




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

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开