资源预览内容
第1页 / 共40页
第2页 / 共40页
第3页 / 共40页
第4页 / 共40页
第5页 / 共40页
第6页 / 共40页
第7页 / 共40页
第8页 / 共40页
第9页 / 共40页
第10页 / 共40页
亲,该文档总共40页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
课 程 设 计 报 告课程名称 C语言程序设计 课题名称 班级成绩管理系统 专 业 班 级 学 号 姓 名 指导教师 肖伟平 何宏 罗敬 2012年12月26日湖南工程学院课 程 设 计 任 务 书课程名称 C语言程序设计 课 题 班级成绩管理系统 专业班级 学生姓名 学 号 指导老师 肖伟平 何宏 罗敬 审 批 任务书下达日期 2012 年 12 月 26 日 任务完成日期 2013 年 元 月 4 日目录一、引言1二、总体设计2三、详细设计4四、问题分析及总结13五、参考文献15六、附件15一、设计内容与设计要求1. 设计内容:班级成绩管理系统设计涉及的知识点:掌握并熟练运用C语言的基本数据类型与各种表达式,程序的流程控制语句;掌握数组的基本概念。熟练掌握一维数组、二维数组的应用、掌握字符数组与字符串的关系以及字符串的简单处理。掌握函数的定义,函数的返回值,函数的调用,函数的形式参数和实际参数之间的关系;掌握变量的作用域与生存期,了解函数的作用域。掌握结构体的概念,结构体类型的定义,结构体变量的定义和初始化,结构体成员的表示,结构体变量的赋值含义,结构体与指针、函数的关系。掌握文件、文件类型指针的基本概念,熟练掌握文件的打开与关闭以及文件的建立、读写等有关操作。2.设计要求:1) 用C语言实现系统;利用结构体数组实现班级成绩的数据结构设计;系统的各个功能模块要求用函数的形式实现;应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观;各项显示数据均要求以表格的形式输出;在各功能子模块中应设计相应的二级菜单。2) 建立一个班级学生成绩数据库,文件名为bjcjk.txt,并从该文件中读取数据;3) 班级成绩管理系统应能提供以下功能:(1)主菜单界面设计。通过提示用户输入一个数字选项,调用相应的功能函数。(2)学生成绩显示:完成班级全部学生成绩的显示,显示时按表格的形式,且应有表头;(3)学生成绩追加:完成新增一个(或多个)学生的成绩记录,要求在追加过程中有相应的提示信息,完成追加后能重新计算学生平均成绩并显示; (4)学生成绩修改:要求能按学号和按姓名两种定位方式,且可以按用户要求修改记录中除学号和姓名以外的指定内容,并重新计算学生的平均成绩;(5)学生成绩信息的查询;要示系统能按学号、按姓名查询以及能查询总分在某一指定范围内的学生信息,且能显示符合条件的所的记录,若所需查询的信息不存在时应有相应的提示信息。(6)学生成绩信息的删除;要求可按指定的学号和指定的姓名两种定位方式删除学生的成绩记录。(7)要求在删除模块、修改模块和查询模块中若找不到所需的记录时,系统设计中应有一定的提示信息。 (8)成绩排序:按学生平均成绩进行排序;(9)成绩统计: 统计并以表格的形式显示所有课程的平均分; 统计并显示选定的某门课程的平均分以及超过该平均分的人数,同时能将超过该平均分的学生记录以表格的形式显示出来。4) 说明:(1) 要求将修改后的数据写入到一个新的数据文件nwejck.txt中。(2) 对系统有兴趣的同学可以在实现基本要求的基础上,完善系统的其它功能。5) 班级成绩管理系统采用一个结构体数组,学生成绩数据库结构如下:int xh /*学号*/char name10 /*姓名*/double yy /*英语*/double mat /*数学*/double jsj /*计算机*/double wl /*物理*/double zf /*总分*/ 注意:学号不能重复且不少于4位数字,各项字符串的长度要求在410之间,数据库应有10条或多于10条以上的记录。6) 要求:1 要求每个学生必须独立思考,认真并按时完成本课程设计所包含的所有内容;2 要求学生必须按照课程设计报告的完整格式说明设计内容,设计任务分析过程和算法,给出程序流程图和全部源程序;3 设计报告的完整格式应包括以下部分的内容: 系统设计总体思路; 系统的主要功能; 系统功能模块的划分(要求画出总体模块框图); 主要功能的实现和各个程序模块说明(每个功能模块的框图、系统主模块的流程图,各个功能模块至少要有一个主要的流程图); 程序调试过程及各模块调试中相应的部分截图; 课程设计总结与体会(不少于500字)。 课程设计参考文献; 程序清单;4 课程设计周内,凡规定的集中上机时间必须到机房调试程序;5 设计完成后必须参加答辩,并按要求演示程序,提交课程设计报告和有关电子文档。7)分组及安排所选题目根据学生班号和学号确定,(班号+学号)% 6+1。如你的班号为01班、学号为01,则所选题目号为:(1+1)%6+13,即课题号为3。8)成绩评定系统设计方案是否合理;程序设计是否正确;调试结果;设计说明书的质量高低;答辩时回答问题情况;课程设计周表现情况;总评成绩记入“课程设计成绩评分表”。二、进度安排第 17 周 星期三 14:0017:00 讲课、布置任务星期五 8:0012:00 机房上机调试程序第 18 周 星期三 19:0022:00 机房上机调试程序星期四 14:0018:00 机房上机调试程序星期五 8:0012:00 机房上机调试程序、答辩 附:课程设计报告排版、打印和装订要求1. 课程设计报告装订顺序:封面、任务书、目录、正文、附件、评分表。按A4大小的纸张排版和打印。 2. 设计报告的页码从目录之后开始使用;3. 正文的格式:一级标题用3号黑体,二级标题用四号宋体加粗,正文用小四号宋体;行距为22磅。正文中程序清单(英文)用英文字体Times New Roman,单倍行间距。 4. 正文的内容:一、课题的主要功能;二、课题的功能模块的划分(要求画出模块图);三、主要功能的实现(至少要有一个主要模块的流程图);四、程序调试(各模块至少有一个程序调试的截图);五、总结(不少于500字);六、参考文献;七、附件(包含所有程序的原代码,且程序中应有必要的注释)。八.正文总字数要求在5000字以上(不含程序原代码)。5设计报告中任务书和评分表不需重新排版。33一、引言1.1前言C语言课程设计是对学生的一种全面综合训练,它包括问题分析,总体结构设计,用户界面设计,程序设计基本技能和技巧的培养。是与课堂听讲、自学和练习相结合的必不可少的一个环节。课程设计的课题比平时的习题复杂得多,也更接近实际。全面熟悉、掌握C语言基本知识,掌握C程序设计中的顺序、分支、循环三种结构及数组、函数和C语言基本图形编程等方法,把编程和实际结合起来,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用计算机解决实际问题的能力,养成提供文档资料的习惯和规范编程的思想,为以后在专业课程中应用计算机系统解决计算、分析、实验和设计等学习环节打下较扎实的基础。1.2设计目的随着电脑技术的发展越来越快,管理系统得到人们广泛的应用。本课题中编写班级成绩管理系统主要是为了方便我们能更加高效快捷地管理学生的各项成绩信息,能够对学生成绩进行追加、修改、删除等操作。并能对输入的数据进行平均分、总分的计算以及总分的排序,进而清楚明朗地显示出来。二、总体设计2.1主要功能主要实现对学生成绩信息实现成绩的显示,成绩的追加,成绩的修改,成绩的查询,成绩的删除,成绩的排序和统计等功能。班级成绩管理系统具体提供以下功能:a、成绩显示:完成全班同学全部学生成绩的显示,以表格形式显示出来,并带有表头。b、成绩追加:新增学生成绩记录,在追加过程中有相应的提示信息并实现连续追加的功能。追加成功的成绩能重新计算学生的平均成绩并显示。c、成绩修改:实现按学号修改和按姓名修改两种修改方式,并可以对指定的学生的各科成绩进行修改,修改过程中有相应的提示信息。修改后能重新计算学生的平均成绩。d、成绩删除:对指定的学号或者指定的姓名进行定位删除,并有相应的提示信息。e、成绩查询:对指定的学号或指定的姓名进行定位查询,并能显示出符合条件的查询结果。查询的信息不存在时有相应的提示信息。f、成绩排名:按学生平均成绩进行排序,并以表格形式显示。g、成绩统计:以表格的形式显示所有课程的平均分,并显示选定的某门课程的平均分以及超过该平均分的人数,同时将超过该平均分的学生记录以表格的形式显示出来。2.2功能模块划分(1)本程序由八个模块构成,其中主模块是由系统函数搭建而成,其重要功能是显示出功能主菜单,由用户作出选择进入子菜单。在子菜单中操作完毕后,能够准确返回到功能主菜单。系统主要模块流程图如下:主函数主界面显示成绩成绩追加成绩修改成绩删除成绩查询成绩排名成绩统计退出系统(2)模块说明主界面 main() 用户选择界面显示模块 Disp() 显示所有学生的成绩信息追加模块 Appe() 添加学生成绩信息修改模块 Modi() 修改学生某项成绩信息删除模块 Dele() 删除学生某项成绩信息查询模块 Query() 查询学生成绩信息排序模块 Sort() 按成绩总分排序统计模块 Total() 统计各科目平均分信息退出模块 Quit() 退出系统并保存信息三、详细设计3.1主要功能的实现(下面以追加模块和修改模块为例)(1)追加模块流程图FILE *fp调用Re_file ()主菜单成绩追加开始输入学生各项信息
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号