文档详情

数据结构课程设计报告-学生成绩管理系统.doc

发布:2016-10-16约8.81千字共21页下载文档
文本预览下载声明
学生成绩管理系统设计 一、需求分析 随着社会的发展,学校的规模不断的扩大,日常教学活动中提取相关信息,以反映教学情况。传统的手工操作方式,易发生数据丢失,统计错误,劳动强度高,且速度慢。使用计算机可以高速,快捷地完成以上工作。在计算机联网后,数据在网上传递,可以实现数据共享,避免重复劳动,规范教学管理行为,从而提高了管理效率和水平。学生成绩管理系统以计算机为工具,通过对学生成绩管理所需的信息管理,把管理人员和老师从繁琐的数据计算处理中解脱出来,使其有更多的精力从事教务管理政策的研究实施,教学计划的制定执行和教学质量的监督检查,从而全面提高教学质量。 信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生活的各个领域。计算机虽然与人类的关系愈来愈密切,还有人由于计算机操作不方便继续用手工劳动。为了适应现代社会人们高度强烈的时间观念,系统软件为教学办公室带来了极大的方便。该软件是以语言为实现语言,其功能在系统内部有源代码直接完成。通过操作,可以了解本软件的基本工作原理。只需输入一些简单的汉字、数字,即可达到自己的目标数据结构形式:链表+二叉排序树。以成绩为节点建立二叉排序树,以学生为节点,以链表形式接在成绩节点之后。 功能:查找(按学号、成绩、姓名)、插入、删除、统计(统计平均成绩、,统计分数段的人数。) #define HEADER3 |----------|---------------|----|----|----|-------|--------|-----| #define FORMAT | %-10s |%-15s|%4d|%4d|%4d| %4d | %.2f |%4d |\n #defineDATA p-data.num,p-data.name,p-data.egrade,p-data.mgrade,p-data.cgrade,p-data.total,p-data.ave,p-data.mingci #define END --------------------------------------------------------------------- \n 2.建立查询菜单,方便软件使用者根据根据自己的需要进行操作: void menu() { system(cls); cprintf( 学生成绩管理系统 \n); cprintf( *************************Menu********************************\n); cprintf(* 1 输入成绩 2 删除成绩 *\n); cprintf(* 3 查询成绩 4 修改成绩 *\n); cprintf(* 5 插入成绩 6 统计成绩 *\n); cprintf(* 7 名次排名 8 保存成绩 *\n); cprintf(* 9 显示成绩 0 退出系统 *\n); cprintf(**************************************************\n); cprintf( 本软件由张进,杨秀玲共同设计,欢迎使用!\n); } 3.定义与学生有关的数据结构 typedef struct student /*标记为student*/ { char num[10]; /*学号*/ char name[15]; /*姓名*/ int cgrade; /*C语言成绩*/ int mgrade; /*数学成绩*/ int egrade; /*英语成绩*/ int total; /*总分*/ float ave; /*平均分*/ int mingci; /*名次*/ }; 4.由于是动态内存分配空间的数据操作,而非文件I/O,那么在程序一开始的时候首先得建立数据,返回头成绩节点。于是首先要有一个创建数据的函数:Creat()。分析要求,可以得到一些初步的功能函数:插入函数Insert()、查找函数Search()(种:按学号、按姓名)、删除函数Delete()、输出学生信息函数Print()。 1. Creat():以二叉排序树的定义建立树并返回根节点,在输入学生信息的同时判断是否已有该成绩节点,若有则直接链在该成绩的学生节点之后;若无,开辟新空间给此成绩节点,并
显示全部
相似文档