1、 选取日期选取日期 1 C 语 言 课 程 设 计 供2 3 页 1 目目 录录 第一部分:课程设计编号、名称、内容 2 第二部分:程序总体设计思路 3 第三部分:程序功能模块划分、图示及流程图 4 4 第四部分:程序设计数据、运行结果 1010 第五部分:程序的优缺点 错误!未定义书签。 第六部分:程序改进思路 1818 第七部分:附录(源代码) 2020 选取日期选取日期 2 C 语 言 课 程 设 计 供2 3 页 2 第一部分:课程设计编号、名称、内容第一部分:课程设计编号、名称、内容 编号 :C 语言课程设计指导书 71 页第九题 名称:学生选修课系统设计 【要求】 假定有 n 门课
2、程, 每门课程有课程编号, 课程名称, 课程性质, 总学时,授课时间,实验或上级时间,学分,开课学期等信息,学生 可按要求(如总学分不超过 60)自由选课。是设计一选修课课程系 统,使只能提供以下功能: (1) 系统一菜单方式工作 (2) 课程信息和学生选课信息录入功能(课程信息用文件保存 输入 (3) 课程信息浏览功能输出 (4) 查询功能(至少一种查询方式)算法 (5) 按学分查询 (6) 某门课程学生选修情况(可选项) 【提示】 数据结构可用结构体, 包括授课和选课两个结构体,其中课程 结构体成员包括编号,课程名称,课程性质,总学时,授课学时,实 验或上机时间,学分,开课学期。学秀结构体
3、成员包括学号,课程编 号,该结构体的建立主要是为了查询某门课程学生选修情况。 选取日期选取日期 3 C 语 言 课 程 设 计 供2 3 页 3 第二部分第二部分 程序总体设计思路程序总体设计思路 由于 C 语言是面对过程的语言, 故我的设计思路是根据目标程序 运行的过程来编写的。 在编写本程序的过程中,首先借助老师给的指导材料,确定了目 标程序运行的次序与界面, 即本程序首先运行 【用户系统】 菜单界面, 其次程序运行【用户插入课程信息】及【用户浏览课程】菜单界面, 最后程序运行【统计选课信息】及【选课】界面。如果用户选择【插 入用户信息】选项则程序进入出入用户课程信息界面。需要一次输入 课
4、程编号,课程名称,课程性质,总学时,授课时间,实验或上机学 时,学分,开课学期等信息;如果用户选择【浏览课程】选项则程序 进入 【浏览课程】 界面, 将会显示所选课程的信息; 如果用户选择 【查 询】选项则会显示按学分查询的选课信息; 一次用户还可以查看某门 课程的所选情况。 其次,根据目标程序运行的次序与界面,确定设 计顺利,设计界面(包括各部分菜单与用户提示信息) 。再次是按照 程序运行的各界面下的菜单功能编写各功能模块, 并调试程序各功能 模块,使各模块能够稳定高效准确地完成对应功能。 最后是程序的总体调试及功能完善,此部分从学生选课的角度 出发,考虑了更加人性化、更加合理、更加高效准确、更加智能化的 设计。 说明:关于各个功能模块的设计思路及程序运行具体过程见报告 的第三、四、五部分。 选取日期选取日期 4 C 语 言 课 程 设 计 供2 3 页 4 第三部分:程序功能模块划分、图示及流程图第三部分:程序功能模块划分、图示及流程图 3.1 系统的结构图 学生可选修课系统