- 34
- 0
- 约 32页
- 2016-03-01 发布于湖北
- 举报
程序设计报告
( 2014/2015学年 第二学期 )
题 目:学生基本信息管理系统
专 业 信息管理与信息系统
组长 学号姓名
组员 学号姓名
指 导 教 师
指 导 单 位 计算机软件中心
日 期 2015 年 6 月 25 日
成员分工 组长()
组员() 组员() 评分细则 评分项 优秀 良好 中等 差 遵守机房规章制度 上机时的表现 学习态度 程序准备情况 程序设计能力 团队合作精神 课题功能实现情况 算法设计合理性 用户界面设计 报告书写认真程度 内容详实程度 文字表达熟练程度 回答问题准确度 简短评语
教师签名:
年 月 日 评分等级 备注 评分等级共五种:优秀、良好、中等、及格、不及格
学生基本信息管理系统
课题内容和要求
此系统是可实现最基本功能的学生管理系统。具体的管理信息应包括:两个txt文件,其中a.txt为学生基本信息文件,应该包括学号、姓名、性别、宿舍号码、电话号码;b.txt为学生成绩基本信息文件,应包括学号、课程编号、课程名称、学分、平实得分、实验成绩、卷面成绩、综合成绩、实得学分。
① a.txt文件不需要编程录入数据,可用文本编辑工具直接生成
②数据录入功能: 对b.txt进行数据录入,只录入每个学生的学号、课程编号、课程名称、学分、平时成绩、实验成绩、卷面成绩共7个数据. 综合成绩、学分由程序根据条件自动运算。
③学生基本情况查询
1)输入一个学号或姓名(可实现选择),查出此生的基本信息并显示输出。
2)输入一个宿舍号码,可查询出本室所有的学生的基本信息并显示输出。
④成绩查询:输入一个学号时,查询出此生的所有课程情况,
⑤删除功能:当在A.TXT中删除一个学生时,自动地在B.TXT中删除此人所有信息。
⑥排序功能:能实现选择按综合成绩或实得学分升序或降序排序并显示数据。
需求分析
图2.1 功能框架图
本次课程设计主要利用了结构体数组、结构体指针以及与文件有关的基本操作,通过采用模块化设计的思想,首先创建好各个模块的函数,然后被主函数调用。主函数通过多次调用不同的函数实现创建文件、查询、删除学生信息模块和排序得基本功能,其总体框图如图2.1。各个模块的程序编写比较容易,各个函数的接口是否处能理好,是本次课程设计能否成功的关键。通过合理处理各函数得接口,使之能结合为一个完整的具有多功能的程序,从而顺利完成本次课程设计。
三、概要设计
图3.2 myprint()函数的流程图
3.3创建文件模块
3.3创建文件模块
mycreat()函数主要实现打开b.txt文件,并通过fscanf()函数从磁盘上读取文件b.txt的学生的学号、课程编号、课程名称、学分、平时成绩、实验成绩、 卷面成绩信息然后依据学分、平时成绩、实验成绩、卷面成绩计算得到综合成绩和实得学分并借助临时文件c.txt将综合成绩和实得学分也加到b.txt文件中。
其中第一个for循环语句主要实现计算综合成绩和实得学分的功能,通过fsanf()语句将文件b.txt得数据一一读入,同时计算综合成绩和实得学分,并将这些数据通过fprintf语句写入临时文件c.txt。
rewind(fp)函数是将fp指示的文件位置指针置于文件开头位置,并清除文件结束标志和错误标志,以便将临时文件c.txt中的数据写入b.txt文件中。
getc与putc函数与文件指针将临时文件c.txt的信息写入b.txt文件中。其流程图见图3.3。
其流程图见图3.3。
图3.3 mycreat()函数流程图
3.4显示信息模块设计
本模块主要设计mydisplay(……)函数。将文件b.txt的数据通过fscanf()语句写入内存,然后通过printf()语句将读到的信息显示到屏幕上。若文件中无记录,则显示文件中没有记录。其流程图见图3.4。
图3.4 显示信息模块流程图
3.5查询模块的设计
本模块主要设计mysearch(……)函数、mysearchbase(
原创力文档

文档评论(0)