资源预览内容
第1页 / 共18页
第2页 / 共18页
第3页 / 共18页
第4页 / 共18页
第5页 / 共18页
第6页 / 共18页
第7页 / 共18页
第8页 / 共18页
第9页 / 共18页
第10页 / 共18页
亲,该文档总共18页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
信息科学与技术学院程序设计基础课程设计报告题目名称: 学生成绩管理系统 学生姓名: 蔡清华 学 号: 2012508045 专业班级: 计科2012级2班 指导教师: 高攀 2013年 6 月 22 日1.课程设计题目与要求- 3 -1.1设计题目- 3 -1.2 设计要求- 3 -2. 总体设计- 4 -2.1课程设计总体功能框架图- 4 -2.2各个模块的功能说明- 4 -2.2.1信息维护- 4 -2.2.2信息查询- 4 -2.2.3成绩统计- 4 -2.2.4排序- 4 -3. 详细设计- 5 -3.1数据结构设计及类设计- 5 -3.1.1数据结构设计- 5 -3.1.2类设计- 5 -3.2模块设计- 5 -3.2.1信息增加函数- 5 -3.2.2信息删除函数- 6 -3.2.3信息修改函数- 7 -3.2.4信息查询函数- 8 -3.2.5成绩统计- 9 -3.2.6 排序- 10 -3.2.7函数之间的关系- 11 -4.运行结果- 12 -4.1程序主界面- 12 -4.2学生成绩信息输入- 12 -4.3学生成绩预览- 13 -4.4学生成绩操作- 13 -4.5学生成绩查询- 14 -4.6成绩统计- 14 -4.7排序- 15 -5.课程设计总结- 16 -6.参考文献- 17 -1.课程设计题目与要求1.1设计题目 学生成绩管理系统 现有学生成绩信息,内容如下姓名 学号 语文 数学 英语 张明明 01 67 78 82李成友 02 78 91 88张辉灿 03 68 82 56王露 04 56 45 77陈东明 05 67 38 47. . . . 编写一系统,实现学生信息管理。1.2 设计要求 编写一系统,实现学生信息管理,软件的入口界面应包括如下几个方面:(1)信息维护:要求:学生信息数据要以文件的形式保存,能实现学生信息数据的维护。此模块包括子模块有:增加学生信息、删除学生信息、修改学生信息(2)信息查询:要求:查询时可实现按姓名查询、按学号查询(3)成绩统计:要求:输入任意的一个课程名(如数学)和一个分数段(如60-70),统计出在此分数段的学生情况。(4)排序:能对用户指定的任意课程名,按成绩升序或降序排列学生数据并显示排序结果(使用表格的形式显示排序后的输出结果)(5)其它要求:只能使用C/C+语言,源程序要有适当的注释,使程序容易阅读至少采用文本菜单界面(如果能采用图形菜单界面更好)学生可自动增加新功能模块(视情况可另外加分)2. 总体设计2.1课程设计总体功能框架图图 2.1 系统总体功能框架图2.2各个模块的功能说明2.2.1信息维护此模块包括四个小模块,其中,成绩输入并保存要求用户输入学生个数以及学生的相关信息,输入完成后提示是否保存为文件形式。增加学生信息,即在已有的学生信息中增加新的信息,删除学生信息,可根据学号、姓名删除指定的学生信息,也可删除所有学生的信息。学生信息修改,输入要修改的学生学号或姓名后,找到该学生信息,重新输入信息并覆盖。2.2.2信息查询用户可根据姓名或学号对指定的学生进行信息查询。2.2.3成绩统计 用户指定要统计的分数段后,选择要统计的科目,即可对学生的成绩进行统计,统计结果出来后可统计其他科目,否则返回主界面。2.2.4排序 用户指定相应的成绩科目,系统根据要求进行降序排列。3. 详细设计3.1数据结构设计及类设计3.1.1数据结构设计定义六个全局变量,其中变量i为整型数据,是执行循环时的次数;变量n为整型数据,是输入学生信息时的学生的个数;变量choose为整型数据,是管理界面中选择结构中的条件表达式;变量fb为字符串型,是将要查找的学号;变量fn为字符串型,是将要查找的姓名;变量press为字符型,是选择按键,根据不同的选择执行不同的功能。3.1.2类设计该系统只含有一个类,即一个Stu类,其中,类中含有十个友元函数,可访问类中的私有数据成员。私有数据成员共五个,number及name是字符串型,yuwen、math及english为单精度型。3.2模块设计3.2.1信息增加函数函数原型Void add(Stu stud);函数功能向已有的学生信息中增加新的信息形参说明在类中定义友元函数,函数形参为Stu stud,在主函数中调用时实参为stud,即将定义的对象数组的数组名作为实参,使函数有权限访问类中的数据成员。算法流程图如图3.2.1 图 3.2.1 增加学生信息 3.2.2信息删除函数函数原型Void delet(Stu stud);函数功能在已有的学生信息中删除新的信息形参说明在类中定义友元函数,函数形参为Stu stud,在主函数中调用时实参为stud,即将定义的对象数组的数组名作为实参,使函数有权限访问类中的数据成员。算法流程图如图3.2.2 图 3.2.2 删除学生信息3.2.3信息修改函数函数原型Void update(Stu stud);函数功能在已有的学生信息中修改新的信息形参说明在类中定义友元函数,函数形参为Stu stud,在主函数中调用时实参为stud,即将定义的对象数组的数组名作为实参,使函数有权限访问类中的数据成员。算法流程图如图3.2.3 图3.2.3 修改学生信息3.2.4信息查询函数函数原型Void query(Stu stud);函数功能 查新学生信息形参说明在类中定义友元函数,函数形参为Stu stud,在主函数中调用时实参为stud,即将定义的对象数组的数组名作为实参,使函数有权限访问类中的数据成员。算法流程图如图3.2.4 图 3.2.4查询学生信息3.2.5成绩统计函数原型Void total(Stu stud);函数功能 根据分数段的不同以及查询科目的不同统计各分数段的人数形参说明在类中定义友元函数,函数形参为Stu stud,在主函数中调用时实参为stud,即将定义的对象数组的数组名作为实参,使函数有权限访问类中的数据成员。算法流程图如图3.2.5 图 3.2.5 成绩统计3.2.6 排序函数原型Void paixu(Stu stud);函数功能 根据不同科目的统计分数段高低形参说明在类中定义友元函数,函数形参为Stu stud,在主函数中调用时实参为stud,即将定义的对象数组的数组名作为实参,使函数有权限访问类中的数据成员。算法流程图如图3.2.6 图 3.2.6 排序3.2.7函数之间的关系如图 3.2.7 图 3.2.7 函数之间的关系 4.运行结果4.1程序主界面4.2学生成绩信息输入4.3学生成绩预览4.4学生成绩操作4.5学生成绩查询4.6成绩统计4.7排序5.课程设计总结C+课程设计作为计算机专业的重头戏,无疑是锻炼在校大学生的重要途径。经过这一次的C+课程设计,我发现自己学习的内容真的是皮毛中的皮毛,这次设计没有用到MFC,只是在DOS环境下完成的,MFC对我来说是一个巨大的挑战,由于自己的能力有限,我没有选择使用MFC,当然也错过了一次挑战自我的机会。写程序代码过程中,有许多知识点都淡忘了,我不得不一边查看资料,一边写代码,其中也出现了很多错误,我只能一个个地寻找错误并改正。我发现自己在C+的知识学习方面还有很大的欠缺,有很多知识都不是很熟悉,往后的学习过程中,我还得加强理论知识学习,同时与实践相结合,不断提高自己的能力。 6.参考文献1.C+程序设计 谭浩强 编著2. C+课程设计朱金付、柏毅主编3.C+实训教程 冯矢勇主编- 17 -
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号