1 福建工程学院计算机与信息科学系实验报告 2010 – 2011 学年第一学期任课老师:实验题目设计一个简单实用班级成绩管理系统实验时间实验开始日期:报告提交日期:实验目的、要求1.该实验的课内学时是4 个课时。2.程序完成后应该完成如下基本功能:1)用自定义结构体typedef struct设计该软件的数据结构;2)用数组或指针链表将所有学生的数据按照学号顺序链接起来。3)程序能够按照学号顺序输入学生的三门成绩,并计算平均成绩和总成绩。4)程序能够显示已经输入的指定学号的学生成绩以及平均成绩和总成绩。5)程序能够按要求显示指定分数段的学生成绩以及平均成绩和总成绩。6)能够统计班级总人数、班级平均成绩。7)能够增加和删除指定学生的成绩。8)按照指定的要求以及顺序(升序或降序)显示学生成绩以及平均成绩和总成绩。3.在完成上述基本功能的前提下,有能力的同学可以完成如下加强功能:1)能够输入的数据长期存储在文件中,再次运行程序时从文件中读取数据,无须重复输入。5)在程序的提示语言清晰明确,界面美观并且适用。实验设计内容2 (1)实验设计的数据结构typedef struct { char name[60]; char ID[7]; float Chinese,Math,English ,sum,average; }student; (2)层次图(3)各个函数分析主函数main()创建文件增 加 和删 除 学生 的 成绩 || 按学 号 录入学 生 平均成绩 , 总成 绩 计算查询查 询 指定 学 号学 生 的成 绩 平均 成 绩总成绩指 定 分数 段 的学 生 成绩 以 及平 均 成绩 和 总成绩按 指 定条 件 对学 生 成绩 进 行排序统 计 班级 总 人数 、 班级 平 均成绩结束程序3 1.主函数main() { Int n; FILE fp; 判断是否存在data.txt 这个文件 ,不存在就创建该文件; 输入 n 选择要进行的操作,根据 n 的值调用相应的函数; } 2. 录入学生成绩struct student *init (int n) { 定义变量 ; 打开文件 ; While() { 输入学生成绩放入变量p; 把 p 里面的内容打印到文件上; } 关掉文件 ; } 3.插入学生成绩void insert (struct student *head) {定义变量 ; 打开文件 ; While() { 输入学生成绩放入变量pi; 插入到指定学号后面;}关闭文件;}4.查看学生成绩void list(struct student *head) { 定义变量 ; 打开文件 ; While() { 显示学生成绩} 4 } 5.查看指定学号或成绩段学生成绩v...