1、 C 语言课程设计语言课程设计 实验题目实验题目 学生信息管理系统学生信息管理系统 一、一、 引言引言 1熟练掌握 C 语言编程的应用的相关操作。 2综合应用 C 语言的知识,实现一个完整的系统,提高编程能力,体会软 件程序的开发过程。 3. 培养学生独立完成 C 语言程序课程设计的能力 4运用结构体和链表编辑一个简单的学生基本信息管理系统,使之能够完 成学生基本信息的创建、修改、添加、查询、删除、排序、输出、退出 操作。 5执行编译操作,并根据提示调试此程序,排除所有的错误和警告。直到 编译成功为止。 6执行运行操作,逐一对每个模块进行调试。直到全部程序运行成功为止。 二、二、 需求分析需求
2、分析 1该学生信息管理系统,完成学生基本信息的录入、修改、添加、查询、 删除、排序、输出、退出操作。 每个模块的功能如下: A、录入模块能够完成学生姓名、性别、学号、年龄、出生年月、入学 年月的输入。 B、更新模块中可以对学生信息进行添加、删除、修改。 C、打印模块可以输出以保存的所有学生信息。 D、查询模块能按学号或姓名查询一个学生的全部信息,并能显示该学 生的全部信息,可以查询所有已经录入的学生信息。 E、排序模块将按照学生学号的顺序进行所有学生基本信息的排序并显 示。 F、退出模块可直接退出此程序,结束操作。 2 创建该学生信息管理系统目的就是能够对学生基本信息进行创建、 修改、 添加、
3、查询、删除、排序等功能,这样可以简化许多人工做起来很复 杂的问题,它还可以重复使用,方便、快捷。 三、概要设计三、概要设计 1. 设计方案 2、模块功能说明 (1)录入模块:对定义的学生信息结构体变量,利用循环,将键入的学生 保存至指定文件,其中,学号、姓名、性别定义为字符 型,年龄、出生年月,入学年月都定义为整型。 (2)添加模块:选择添加信息选项,按系统提示依次输入基本信息,完毕 后,将询问是否继续。 (3)修改模块:选择修改选项,输入要修改学生的姓名,利用循环、判断 语句,找到对应的信息,可对任意一项进行修改,完毕后, 询问是够继续。 (4)删除模块:选择删除选项,可继续选择按学号或按姓
4、名删除。选择后, 将打印出其基本信息,询问是否确认删除。利用覆盖删除 法,删除所选的项目。 (5)输出模块:利用读函数,读取键入的信息,出入编辑好的表格及所有 学生信息。 (6)查询模块:此模块有 2 种查询方式:按姓名查询、按学号查询。它也 是通过循环判断查找,如果找到则显示该学生的全部信 息,否则,将输出没有查到该学生信息,,给以提示。 (7)排序模块:对学生的学号进行排序。利用选择排序法排序,最后保存 结果。 四、详细设计及运行结果四、详细设计及运行结果 流程图 主 函 数 录入模块 查询模块 输出(打印)模块 添加模块 排序模块 修改模块 删除模块 主 函 数 录入模块函数 查询模块函
5、数 输出模块函数 添加模块函数 排序模块函数 修改模块函数 删除模块函数 按姓名查询 按学号查询 按学号删除 按所选项修改 录入模块 输入学生基本信息 输入完毕 返回主菜单 否 是 添 加 模 块 输入要 添加人 的学号 输入添 加学生 的全部 信息 返 回 主 菜 单 继续? 是 否 删 除 模 块 按姓名删除 按学号删除 返回上一级菜单 显 示 删 除 人 的 信 息 返 回 菜 单 确 认 删 除 修 改 模 块 输 入 修 改 学 生 学 号 显 示 学 生 基 本 信 息 查 询 信息存 在 不存在 学号 姓名 性别 年龄 入学年月 选 择 修 改 项 显 示 修 改 后 信 息 返
6、回主菜单 是 否 继 续 是 否 六调试情况,设计技巧及体会六调试情况,设计技巧及体会 1.调试: 输入学生信息的情况,按照编写的程序进行进行调试,输出学 生信息情况、添加、删除、查询(1 按学号 or2 按姓名) 、排序、修 改等学生信息的管理的情况,退出程序。 2.设计技巧: 通过运用 C 语言的语法规则,结构体和链表编写简单的 查 询 模 块 按 姓 名 查 询 按 学 号 查 询 输出所查询的学生信息 返回主界面 排序模块 排序方式 按 学 号 排 序 显示排序结果 返回主界面 学生信息管理系统。运用模块,编写各个小程序是指连接成一个完整 的学生信息管理系统,使程序更加严谨,简洁,清晰,实用。 3.体会: 我对自己这次的实验设计完成的还比较满意,这个学生管数组 知识运用 C+编写完成。此程序的不足之处是学生基本信息方面还不 够完善,譬如没有家庭住址,电话号码等相关的学生基本信息。课程 设计看似简单,实则不然。 它花费了近一周的时间写程序,以后的 大多数时间就在调程序,从构思到结构大体框架再到细节。这让我明 白“宏观主宰全局,细节决定成败”