《C语言课程设计-班级成绩管理系统》由会员分享,可在线阅读,更多相关《C语言课程设计-班级成绩管理系统(41页珍藏版)》请在金锄头文库上搜索。
1、 学院课 程 设 计 报 告C 语言程序设计课程设计专 业 电 气 工 程 及 其 自 动 化班 级姓 名学 号指 导 教 师年 月新能源与动力工程学院课程设计任务书课程名称:C语言程序设计课程设计 指导教师(签名): 班级: 姓名 学号: 一、课程设计题目班级成绩管理系统二、课程设计使用的原始资料(数据)及设计技术要求:安装有Windows操作系统电脑Visual C+ 6.0二、课程设计的目的学生成绩信息包括:学期,学号,班别,姓名,四门课程成绩(语文、数学、英语和政治)等3、课程设计的主要内容和要求(包括原始数据、技术参数、设计要求、工作量要求等)1输入功能:可以一次完成无数条信息的输入
2、。2输出功能:能按班级输出学生的成绩单。3修改功能:完成对单个学生成绩的修改。4查找功能:完成对单个学生信息查找,并显示。5排序功能:按学生成绩进行排序,并显示。4、工作进度安排7月8日:选择课程设计题目,确定分组7月9日:查找资料,编辑程序7月10日:查找资料,编辑程序7月11日:查找资料,修改程序7月12日:审核和打分5、主要参考文献1 谭浩强.C 语言程序设计(第二版).北京: 清华大学出版社,2009.2 谭浩强C 程序设计程序设计学习辅导 .北京 :清华大学出版社,2005.审核批准意见系主任(签字) 年月日指导教师评语及成绩评定表指导教师评语设计过程(40)设计报告(50)小组答辩
3、(10)总成绩(100)成绩指导教师签字: 年 月 日目录一引言 .- 1 -1.1 设计目的 .- 1 -1.2意义 .- 1 -1.3内容 .- 1 -1.4主要任务 .- 2 -二主要功能和功能 .- 3 -2.1主要功能 .- 3 -2.2要求 .- 3 -三.系统的数据需求及性能分析 .- 4 -3.1 数据需求 .- 4 -3.2系统的性能分析 .- 4 -四. 输入输出要求 .- 5 -五整体框架结构 .- 6 -六学生成绩业务管理图 .- 7 -七系统概要设计 .- 8 -7.1 程序的模块组成 .- 8 -7.2 学生信息结构数组 .- 8 -7.3 各个程序的主要功能介绍:
4、 .- 9 -八.系统详细设计 .- 10 -8.1函数介绍 .- 10 -九. 调试与测试 .- 13 -9.1系统调试 .- 13 -9.2系统测试 .- 13 -十总结 .- 20 -参考文献 .- 22 -附录 源代码 .- 23 - 1 -一引言1.1 设计目的1.学生成绩的录入2.能统计学生的成绩,求学生的总分及平均分3.能查询单个学生成绩4.能修改单个学生信息1.2 意义随着经济的快速发展,科技的日益普及。目前我国的信息数字化工作也进入一个全新发展时期,特别是高校的信息化建设已进入了全面的发展阶段,诸多高校充分地认识到,信息化建设己经成为了高校提高自身管理水平、提升综合竞争实力的
5、重要手段。在高校,各种信息管理系统层出不穷。通过本系统,能够实现对学生成绩的有效管理,减少教务人员、教师的工作量,该系统能够很好的满足学校教学、管理方面的要求。为教务人员、教师提供学生成绩管理系统,以轻松实现学生成绩管理。系统化的成绩管理可以减少教务人员及教师因为工作量大而出现错误,为学校减少不必要的人力、物力、财力,便于学生成绩的增加、删除、修改、查询。1.3 内容对一个有 N 个学生的班级,每个学生有四门课程。该系统实现- 2 -对班级成绩的录入、显示、修改、排序、保存等操作的管理。1.4 主要任务1.能按完成对学生成绩的录入、修改。2.能统计学生的成绩,求学生的总分及平均分。3.能查询学
6、生各科成绩。- 3 -二主要功能和功能2.1 主要功能1.学生查询功能:为了方便学生查找成绩等信息,将所有信息按照需要进行分类。这样学生就能很方便的找到自己所需要的信息。2.管理员查询功能:管理员可以通过条件选择查询所有信息,并进行排序。3.添加功能:管理员可以输入学生成绩等相关信息。4.修改功能:输入密码后管理员可以对数据库中的信息进行修改,系统能够通过管理员的给出的条件查找出所要修改的信息,对修改后的信息进行保存。5.统计功能:管理员可以通过此功能对信息进行统计。2.2 要求使用二进制文件方式存储数据,系统以菜单方式工作 学生成- 4 -绩信息包括:学号,班别,姓名,四门课程成绩(语文、数
7、学、英语和政治)等。要求使用二进制文件方式存储数据,系统以菜单方式工作,实现对学生成绩的录入,修改,统计,排序,查询,输出等功能。三.系统的数据需求及性能分析3.1 数据需求通过查阅资料以及对程序的理解,总结出用户对数据的需求如下:1.学生信息:包括:学号、学生姓名等信息。2.课程信息:包括:课程编号、课程名称等。3.基本数据维护功能:(1)录入学生的成绩信息。- 5 -(2)显示学生的成绩信息。(3)保存学生的成绩信息。(4)排序学生的成绩信息。(5)统计学生的成绩信息。3.2 系统的性能分析1.系统的高速性、稳定性、安全性。2.系统人机界面友好,易学易用。3.系统维护成本较低。四. 输入输
8、出要求在菜单选项中 1-7,选择功能项,进行对应选项的函数调用。1.每一条记录包括一个学生的学号、姓名、4 门成绩、平均成绩;2.输入功能:输入学生的基本信息存入磁盘文件中;- 6 -3.显示功能:输出已存盘的学生信息;4.排序功能:输出用户所要选择科目的提问,输入科目后输出该科目一排好的学生成绩,并按学生平均成绩进行排序;5.插入功能:插入新的信息;6.修改功能,输入密码.错误输出是否继续输入密码.正确则逐个输出是否想要修改学生信息;7.保存功能:将学生记录保存在任何自定义的文件中。五整体框架结构初始化 录入 显示 排序 插入 修改 保存 退出- 7 -图 1 整体框架结构图六学生成绩业务管
9、理图学生输入学号和密码 查询 学生数据库输出结果- 8 -、图 2 学生成绩业务管理图成绩数据库输出结果统计汇总新数据数据修改或添加管理员- 9 -七系统概要设计7.1 程序的模块组成第一个模块:先定义好一些必要的全局变量以及调用的函数和结构体数组。第二个模块:设计一个菜单函数 menu();实现能供用户选择功能项。第三个模块:用 enter()函数实现成绩的输入。第四个模块:用 save()函数实现成绩的保存。第五个模块:用 print()函数实现成绩输出。第六个模块:用 cort()函数实现成绩排序功能。第七个模块:用 modify()函数实现成绩修改功能。第八个模块:用 count()函
10、数实现成绩统计功能。main 函数实现总的控制台界面,调用 void enter(),void cort(),void modify(),void count(),print(),void save(),函数实现各种用户功能要求。7.2 学生信息结构数组struct stu- 10 -char name20;int num;int scoreM;7.3 各个程序的主要功能介绍:1.为便于用户使用,先定义一个常数 N 表示人数,学生信息的结构体数组,以及调用功能项的函数。2.void main():利用 swithch()实现各函数的调用,系统根据输入的数字选项来调用相应的函数。 3.void
11、Enter():用来执行学生成绩记录的输入。4.void Print():显示所有学生的信息。5.void save():这是一个不返回值的有参函数,形参为“链表头的指针”,可以把学生记录保存在电脑上由自己任意命名的二进制文件。6.void Cort():要排序的 科目的 序号,用选择排序法实现函数学生成绩的排序。7.void Modify():需要通过密码验证,进入菜单后可实现对- 11 -学生资料的修改。8.void Count():可以显示学生的平均成绩以及科目最高分。八.系统详细设计8.1 函数介绍1.主函数 main()利用 swithch()实现各函数的调用,系统根据输入的数字选项
12、来调用相应的函数。主要实现“ 功能选择” 的界面,在这个界面里有显示系统的九大功能,根据每个功能前面的序号进行选择。等执行完每一个函数功能后,按任一键回到主界面也要通过这个函数来实现!2. void Enter()函数用 scanf 依次输入学生信息,在输入多门成绩成绩时,用 for 循环来实现,结尾调用 save()函数保存。3. void Print()函数为了使界面美观对学生成绩用%5d 输出,且用换行实现,学生信息整齐排列。4.void Cort()函数先定义 choice1,输出想要排序的科目的序号,- 12 -用选择排序法实现函数学生成绩的排序。5.void Modify()函数先定义好 一个密码以及 flag