没有合适的资源?快使用搜索试试~ 我知道了~
首页表格形式的学生成绩管理系统
表格形式的学生成绩管理系统
需积分: 14 115 浏览量
更新于2023-05-25
评论 2
收藏 159KB DOC 举报
1能够输入学生的学号、姓名、三科成绩并且计算出平均成绩。 2能够以表格的形式输出学生记录 3能够按照学生三科的平均成绩进行排序 4能够按照学生的单科成绩进行排序 5能够按照学号查询学生记录 6往表中插入学生记录 7从表中删除学生记录 8存储记录到文件中 9从文件中读取记录
资源详情
资源评论
资源推荐

一、摘要
学生成绩管理系统的实现。
二、需求分析
能够输入学生的学号、姓名、三科成绩并且计算出平均成绩。
能够以表格的形式输出学生记录
能够按照学生三科的平均成绩进行排序
能够按照学生的单科成绩进行排序
能够按照学号查询学生记录
往表中插入学生记录
从表中删除学生记录
存储记录到文件中
从文件中读取记录
退出
数据字典
数据字典
数据流条目
数据流名称:全部记录
别名:无
简述:最新更新后所有关于学生成绩的记录
来源:数据库
去向:加工“记录筛选”
数据流量:不限
组成:学号姓名平均成绩
数据存储条
数据存储名称:学生成绩记录
别名:无
简述:存放学生所有可供查询的信息
组成:学号姓名平均成绩
组织方式:索引文件,以学学号为关键字
查询要求:要求能立即查询
数据项条目
数据项名称:学号
别名:无
简述:所有学校学生的学号
类型:字符串
加工条目
加工名:更改的记录
激发条件:学生成绩记录被改动
优先级:普通
输入:新记录

输出:更新数据、数据未改动
加工逻辑:根据现有学生成绩记录
新记录旧记录
更新数据
数据未改动
各变量的定义和作用:
定义常数
!"#定义数据结构
$"% &'()
"% %*'()
"& '()
+&%!*)
+&%%, %-)
& )
!"#./)
012341)
"% .*!'(定义菜单字符串数组
4 输入记录
5 显示单链表中所有记录
& &*%67按照总成绩排序
& &-"&! !按照单科成绩排序
% " "& &3按照学号查找记录
"& &插入记录到表中
3% "& &*从表中删除记录
%,将单链表中记录保存到文件中
8&%从文件中读入记录.9
:!退出
12341.;<初始化链表
12341." %;<创建链表,完成数据录入功能
!;"% . &*="% .="&!<自定义输入控制函数 !
三.系统设计
、进入界面
、输入选项 ,回车;
按提示输入数据
、回到主菜单;
输入选项 ,回车;
输入文件名:%%,回车;
出现成功提示,则读入文件操作成功。
、回到主菜单,输入 ,回车
每 个暂停显示数据
、回到主菜单,输入 ,回车

出现排序成功信息。
、回到主菜单,输入 ,回车
出现排序成功信息。
、回到主菜单,输入 ,回车
按提示插入一组数据
、回到主菜单,输入 ,回车
按提示输入姓名,删除数据
出现删除成功的信息
、回到主菜单,输入 ,回车
输入学号进行查询
、回到主菜单,输入 ,回车
出现统计信息
、回到主菜单,输入 ,回车
输入 !,回车
出现成功写入文件的信息
、回到主菜单,输入 ,回车退出系统
各变量的定义和作用:
定义常数
!"#定义数据结构
$"% &'()
"% %*'()
"& '()
+&%!*)
+&%%, %-)
& )
!"#./)
012341)
"% .*!'(定义菜单字符串数组
4 输入记录
5 显示单链表中所有记录
& &*%67按照总成绩排序
& &-"&! !按照单科成绩排序
% " "& &3按照学号查找记录
"& &插入记录到表中
3% "& &*从表中删除记录
%,将单链表中记录保存到文件中
8&%从文件中读入记录.9
:!退出
12341.;<初始化链表
12341." %;<创建链表,完成数据录入功能
!;"% . &*="% .="&!<自定义输入控制函数 !

四.系统实施
主函数 main()
利用无限次循环 for(;;)和 swithch()实现各函数的调用,系统根据输入的数字选项来调
用相应的函数。
初始化函数 STUDENT *init()
这是一个无参函数,里面只有一个语句,它的作用是使链表初始化=使 % 的值为
288。比如:没有这个函数的话,在你没有输入任何数据的情况下,去执行显示功
能的时候会显示一些乱码!
菜单选择函数 int menu_select();
这是一个无参函数,主要实现“功能选择”的界面,在这个界面里有显示系统的九大功
能,根据每个功能前面的序号进行选择,中间还显示系统当前的时间。等执行完每
一个函数功能后,按任一键回到主界面也要通过这个函数来实现!
输入记录函数 STUDENT *create()
这是一个无参函数,用来执行第学生成绩记录的输入,当学生为 时停止输入,函
数结束后,带回一个指向链表头的指针 %。
输入记录函数 STUDENT *create()
这是一个无参函数,用来执行第学生成绩记录的输入,当学生为 时停止输入,函
数结束后,带回一个指向链表头的指针 %。
显示记录函数 void print(STUDENT *head)
这是一个不返回值的有参函数,形参为“链表头的指针”,负责对全部学生成绩记录的
输出,不足之处就是不能对学生成绩进行分页显示。
查找记录函数 void search(STUDENT *head)
这是一个不返回值的有参函数,形参为“链表头的指针”,实现按学号对某个学生进行
查找,并显示所查找到的记录。
删除记录函数 STUDENT *delete(STUDENT *head)
这是一个有参函数,形参为“链表头的指针”,先输入要删除的学生记录的学号,找到
后显示该学生信息,等确认后便可按“>?进行删除。
排序函数 STUDENT *sort(STUDENT *head)
这是一个有参函数,形参为“链表头的指针”,按学生成绩的平均分高低进行排序,还
可以显示名次。
插入函数 STUDENT *insert(STUDENT *head,STUDENT *new)
这是一个有参函数,形参有两个,一个是“链表头的指针”,一个是“待插入指针”,按
照原来成绩平均分的高低进行插入,插入后会重新进行排序,并返回。
保存数据到文件函数 void save(STUDENT *head)
这是一个不返回值的有参函数,形参为“链表头的指针”,可以把学生记录保存在电脑
上由自己任意命名的二进制文件。
从文件读数据函数 STUDENT *load()
这是一个不返回值的有参函数,形参为“链表头的指针”,根据输入的文件地址进行读
取
各功能模块的算法处理流程图及相关说明
、主函数 *%;<
、初始化函数 12341.;<
剩余18页未读,继续阅读


















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0