1、目目 录录 前 言 2 目的 3 需求分析. 3 1、问题描述 . 3 2、功能要求 . 3 概要设计. 4 1) 程序的模块组成: 5 2) 各个函数的主要功能: 5 总体框架 . 7 详细设计. 8 主要功能的实现 8 函数明细 . 8 主函数 main() . 8 菜单选择函数 int menu_select() 8 初始化函数 STUDENT *init() 8 输入记录函数 STUDENT *create() . 9 显示记录函数 void print(STUDENT *h) . 9 保存数据到文件函数 void save(STUDENT *h)10 查找记录函数 void sear
2、ch(STUDENT *h) 11 删除记录函数 STUDENT *delete(STUDENT *h) 11 1 修改函数 STUDENT *Modify(STUDENT *h)12 从文件读数据函数 STUDENT *load() .13 按部分排序函数 STUDENT *sort(STUDENT *head) .14 主要源程序代码 15 调试分析过程描述 .29 调试29 部分截图 30 总结心得体会 31 参考资料34 2 前前 言言 C 语言程序设计课程设计是对学生的一种全面综合训练,它包括 问题分析, 总体结构设计, 用户界面设计, 程序设计基本技能和技巧, 多人合作,以至一整套
3、软件工作规范的训练和科学作风的培养。 是与 课堂听讲、自学和练习相辅相成的必不可少的一个教学环节。通常, 课程设计的课题比平时的习题复杂得多,也更接近实际。 课程设计着 眼于与应用的结合点, 使学生学会如何把书上学到的知识用于解决实 际问题,培养软件工作所需要的动手能力;另一方面,能使书上的知 识变“活” ,使学生更好地深化理解和灵活掌握教学内容。为了达到 上述目的,本课程设计安排了四个设计课题,训练重点在于基本的程 序设计方法和分析问题的能力,而不强调面面俱到。学生可任选其中 一题进行设计,设计完毕写出课程设计报告,用 A4 纸打印成册;并 将课程设计报告与源程序存盘。 学习委员将课程设计报
4、告与磁盘收齐 后交指导老师。 3 目的目的 全面熟悉、掌握 C 语言基本知识,掌握 C 程序设计中的顺序、分 支、循环三种结构及数组、函数和 C 语言基本图形编程等方法,把编 程和实际结合起来, 增强对不同的问题运用和灵活选择合适的数据结 构以及算法描述的本领,熟悉编制和调试程序的技巧,掌握分析结果 的若干有效方法,进一步提高上机动手能力,培养使用计算机解决实 际问题的能力, 养成提供文档资料的习惯和规范编程的思想,为以后 在专业课程中应用计算机系统解决计算、分析、实验和设计等学习环 节打下较扎实的基础。 需求分析需求分析 1、问题描述:、问题描述: 对一个有 N 个学生的班级,每个学生有 M 个课程。该系统能对成绩 的录入和显示,能计算每个学生的平均成绩以及各个功课的平均成 绩,能根据学生的学号来查询该学生的成绩,能删除该学生的记录, 能根据每个学生的平均成绩来给他们进行排序,最后退出系统。 2、功能要求、功能要求: 1 本系统采用一个结构体数组, 每个数据的结构应当包括: 学号、 姓名、M 门课程名称。 2 本系统显示这样的菜单: .a、每一条记录包括一个学生的学