1、 课课 程程 设设 计计 说说 明明 书书 课程名称: 高级语言程序设计 设计题目: 学生成绩管理 院 部: 计算机科学与信息工程学院 学生姓名: 学 号: 专业班级: 指导教师: 2013 年 6 月 课课 程程 设设 计计 任任 务务 书书 设计题目 成绩管理系统 学生姓名 所在院部 计算机科学与 信息工程学院 专业、班级 设计要求:设计要求: 完成一个学生成绩管理,具体要求如下: 1. 输入学生信息 2. 显示学生信息 3. 查询学生信息(1)按学号查询(2)按姓名查询(3)按性别查询 4. 更新学生信息 5. 删除学生信息 6. 计算学生成绩(1)计算总分(2)计算平均分 7. 保存到
2、文件 8. 退出 学生应完成的工作:学生应完成的工作: 1. 学生应认真学习参考程序,理解每个文件、每个函数以及各个变量的作用和意义。在此基础上 进一步改进程序,最后正确地运行程序。 2. 对程序进行测试,设计详细的测试计划,然后根据测试计划设计测试用例,对程序进行测试。 测试时应注意对各种边缘情况进行测试。 3. 完成课程设计报告。 参考文献:参考文献: 1. 梁旭等 C 程序设计课程设计 电子工业出版社 2011 2. 谭浩强 C 程序设计(第四版) 清华大学出版社 2010 工作计划:工作计划: 1. 小组审题,查阅资料,进行设计前的必要资料准备(3 天) 。 2. 把程序完整运行出来(
3、4 天) 。 3. 增加改进程序(3 天) 。 4. 写课程设计报告(3 天) 。 5. 提交课程设计报告及答辩(1 天) 任务下达日期:2013 年 6 月 10 日 任务完成日期:2013 年 6 月 23 日 指导教师(签名) : 学生(签名) :周博娜 目目 录录 1 前言 . 1 2 需求分析 . 1 3 概要设计 . 1 4 详细设计 . 2 5 改进或增加功能模块说明 . 4 6 程序测试 . 4 7 课程设计总结 5 8 致 谢 . 5 9 参考文献 . 错误错误!未定义书签。未定义书签。 10 源程序 . 5 1 学生成绩管理学生成绩管理 1 前言 编写一个程序来实现算术计算
4、器。通过结构体数组和共用体数组来存放输入的 每一数字或运算符号的记录(包括 1、2、3 等数字,+、-、*、等运算符号) ,然后 将其信息存入文件中。输入一个算术计算式,就在屏幕上显示结果。 2 需求分析 2.1 要求 (1)用C语言实现程序设计; (2)利用结构体、共用体进行相关信息处理; (3)画出查询模块的流程图; (4)系统的各个功能模块要求用函数的形式实现; (5)界面友好(良好的人机互交) ,程序要有注释。 2.2 任务 (1)定义一个结构体类型数组,输入 09 及+、-、*等符号的信息,将其信息 存入文件中; (2)输入简单的加减乘除算术计算式,并在屏幕上显示计算结果; (3)画
5、出部分模块的流程图; (4)编写代码; (5)程序分析与调试。 2.3 运行环境 (1)WINDOWS2000/XP 系统 (2)TurboC2.0 编译环境 2.4 开发工具 C语言 3 概要设计 2 3.1 系统流程图 3.2 查询函数流程图 4 详细设计 在程序的开头部分定义了结构体类型,用来存放按钮信息,代码如下。 struct s_button /*按键的结构体*/ int sx,sy,ex,ey; char *head; int press; button17; /*图表按键数*/ char far *vid_mem; static int tx=32,ty=3; /*静态变量*/
6、 float v1=0.0,v2=0.0; 用输入函数 input()来输入按键放在 s_button数组中。 再定义结构体栈,代码如下。 struct stack /*结构体栈*/ char s20; int tos,top; stack; char tag; 用于数据的输入和存放。 进而定义了表格窗口函数,窗口画线函数和边界线函数,代码如下。 int form_win() /*表格窗口初始化*/ textbackground(WHITE); /*窗口背景颜色*/ clrscr(); /*清零*/ draw_win(); /*窗口画线*/ active_button(); /*窗口按键*/ out_text_win(); /*输出文本窗口*/ window_xy(32,3); /*计算结果窗口* draw_win() /*边框画线窗口*/ draw_border(i