版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学生成绩管理系统PAGE PAGE 15学生实习报告课程名称_程序设计综合实践_题目名称_学生成绩管理系统_摘要运用c语言的知识编一个简易的学生成绩管理系统, 该学生学生成绩管理系统主要有查询,删除,排序,插入的功能,并且能够对指定文件操作,也可将多个文件组成一个文件。编程序时,将题目分瓜成不同的模块,再运用子函数慢慢实现。关键字查询,删除,排序,插入 目录 TOC o 1-3 h z u HYPERLINK l _Toc301034201 摘要 PAGEREF _Toc301034201 h 2 HYPERLINK l _Toc301034202 关键字 PAGEREF _Toc301034
2、202 h 2 HYPERLINK l _Toc301034203 目录 PAGEREF _Toc301034203 h 3 HYPERLINK l _Toc301034204 图目录 PAGEREF _Toc301034204 h 3 HYPERLINK l _Toc301034205 1.问题的描述 PAGEREF _Toc301034205 h 4 HYPERLINK l _Toc301034206 1.1设计内容 PAGEREF _Toc301034206 h 4 HYPERLINK l _Toc301034207 1.2设计要求 PAGEREF _Toc301034207 h 4 H
3、YPERLINK l _Toc301034208 2.总体设计 PAGEREF _Toc301034208 h 5 HYPERLINK l _Toc301034209 3.详细设计 PAGEREF _Toc301034209 h 6 HYPERLINK l _Toc301034210 4.数据结构设计描述 PAGEREF _Toc301034210 h 8 HYPERLINK l _Toc301034211 4.1结构 PAGEREF _Toc301034211 h 8 HYPERLINK l _Toc301034212 4.2主函数功能介绍 PAGEREF _Toc301034212 h 8
4、 HYPERLINK l _Toc301034213 4.3各个子函数功能介绍 PAGEREF _Toc301034213 h 8 HYPERLINK l _Toc301034214 5.调试分析 PAGEREF _Toc301034214 h 9 HYPERLINK l _Toc301034215 6.总结和心得 PAGEREF _Toc301034215 h 12 HYPERLINK l _Toc301034216 7.参考文献 PAGEREF _Toc301034216 h 13 HYPERLINK l _Toc301034217 8.辩论记录 PAGEREF _Toc301034217
5、 h 14 HYPERLINK l _Toc301034218 9.教师意见 PAGEREF _Toc301034218 h 15图目录 TOC h z c 流程图 HYPERLINK l _Toc301033851 主流程图 2.1 PAGEREF _Toc301033851 h 5 HYPERLINK l _Toc301033852 查询流程图 3.1 PAGEREF _Toc301033852 h 6 HYPERLINK l _Toc301033853 排序流程图 3.2 PAGEREF _Toc301033853 h 6 HYPERLINK l _Toc301033854 插入流程图
6、3.3 PAGEREF _Toc301033854 h 7 HYPERLINK l _Toc301033855 删除流程图 3.4 PAGEREF _Toc301033855 h 7问题的描述设计一个学生成绩管理系统,对上学期的本班的学习成绩进行管理,可以用数组来设计这个程序,具有查询和检索功能,并且能够对指定文件操作,也可将多个文件组成一个文件。设计内容1、每一条记录包括一个学生的学号、姓名、性别、各门课成绩上学期的科目、平均成绩。2、输入功能:可以一次完成假设干条记录的输入。3、显示功能:完成全部学生记录的显示。4、查找功能:完成按姓名或学号查找学生记录,并显示。5、排序功能:按学生平均成
7、绩进行排序。6、插入功能:按平均成绩上下插入一条学生记录。7、将学生记录存在文件student.dat中。8、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!设计要求有存储本班学生记录包括学号、姓名、科目成绩、性别、的文件student.dat,所有学生以学号从小到大排序该文件自行建立。要求编程序实现查询、排序、插入、删除诸功能。具体要求如下:要求显示如下界面*1查询2排序3插入4删除*通过选择1-4来确定要做哪一个操作。假设选1,那么出现如下界面*1.1按学号查询1.2按姓名查询1.3按成绩查询*通过选择1.1-1.3来确定要做哪一个操作,其中:按姓名查询用顺序法
8、实现;按成绩查询实现查询成绩小于m分的学生;找到该生将学生记录输出到屏幕,假设查无此人,输出相关信息。假设选2,那么按成绩从大到小排序,姓名,学号顺序也随之调整。 假设选3,将一个新学生记录按学号顺序插入,并把结果保存到文件student.dat中。假设选4,删除指定学生的记录,并把结果保存到文件student.dat中。不同的模块都要有出错处理,并能给出出错提示。如输入数据错误,文件操作错误等等以上各个功能均编写成子函数,由主函数调用实现。利用结构体数组实现学生成绩的数据结构设计;完成设计任务并书写课程设计报告。总体设计根据上面的题目,可以将这个系统分为以下模块: 查询模块.、排序模块.、插
9、入模块、删除模块.如图:主流程图 STYLEREF 1 s 2. SEQ 流程图 * ARABIC s 1 1详细设计各功能模块的具体实现算法流程图查询流程图 STYLEREF 1 s 3. SEQ 流程图 * ARABIC s 1 1排序流程图 STYLEREF 1 s 3. SEQ 流程图 * ARABIC s 1 2插入流程图 STYLEREF 1 s 3. SEQ 流程图 * ARABIC s 1 3删除流程图 STYLEREF 1 s 3. SEQ 流程图 * ARABIC s 1 4数据结构设计描述结构struct studentint num;char name20;char s
10、ex10; int cgrade;int egrade;int mgrade;double average;主函数功能介绍主函数一般设计得比较简单,只提供输入,处理和输出局部的函数调用,其中各功能模块用菜单方式选择.菜单项选择用switch-case来选择各个子函数功能介绍1、查询模块:可用void find(FILE *f)来实现。找到就输出此学生全部信息包括学生的姓名、学号和性别以及学生的语文、数学、英语的成绩。 用fscanf函数将文件中的数据读入,并判断设置的两个结构空间是否有足够的空间。在做选择,按学号,姓名,成绩三个不同的途径查找学生,这里用if-else来选择判断。查找中都用一个
11、for循环找出查询的学生,并输出该学生的信息。2、排序模块:可用void sort(FILE *f)来实现。对学生的成绩进行排序。 用fscanf函数将文件中的数据读入,并判断设置的两个结构空间是否有足够的空间。用两重for循环比较学号大小并将学号从小到大排序。3、插入模块:可用void insert(FILE *f)函数来实现。其中通过学号的大小来比较的,并且以此来排序。 用fscanf函数将文件中的数据读入,并判断设置的两个结构空间是否有足够的空间。判断文件中是否有学生,假设有学生if,先用两重for循环比较学号大小并将原有学生学号从小到大排序,然后用一个for循环找出你要插学生的位置,再
12、用一个for循环将这个位置后面的数都向后移一位,再将要插学生的信息插入,再输出并保存。假设没有学生else,直接输出并保存到文件中。4、删除模块:可用void dele(FILE *f)函数来实现。删除指定姓名的学生 用fscanf函数将文件中的数据读入,并判断设置的两个结构空间是否有足够的空间。输入要查找的学生的姓名,先查找是否存在该学生,假设不存在,直接处处不存在该学生;假设存在,将该学生位置后面的学生向前进一位,再输出并保存。调试分析包含各模块的测试用例,及测试结果。开始输入5时,输入错误!再用插入操作插入按学号查询按姓名查询按成绩查询删除操作排序总结和心得课程设计是培养学生综合运用所学
13、知识 ,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对我们的实际工作能力的具体训练和考察过程.随着科学技术开展的日新月异,当今计算机应用在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握程序开发技术是十分重要的,而C语言又是最常见,功能最强大的一种高级语言,因此做好C语言课程设计是十分必要的。 回忆起此次课程设计,至今我仍感慨颇多,确实,自从拿到题目到完成整个编程,从理论到实践,在一个星期的日子里,可以学到很多很多的东西,同时不仅可以稳固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有理论知识是远
14、远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会效劳,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的缺乏之处,对一些前面学过的知识理解得不够深刻,掌握得不够牢固,比方说结构体,指针,链表通过这次课程设计之后,我们把前面所学过的知识又重新温故了一遍。 我做的是学生成绩管理系统,虽然是很简单的一个小的程序,但对我一个初学者来说却是一个很大的困难。更加是第一次做课程设计,所以连续做了几天却丝毫没有进展,最主要是不知从何开始,这个时候才知道上课老师们不厌
15、其烦的教导是多么的珍贵,这个时候才懊悔上课的时候没有认真的听讲。可是现在一切都晚了,还好时间还算是充裕,只好拿出书本重新复习一下。特别是结构体,指针的局部,几乎是一片空白。不过经过几天的努力,大体上把课本上的知识点看了一遍,知识点也都根本是撑握了,所以一下一步就是开始正式的编程序了。不过毕竟是个新手,还是不知如何下手,于是就在网上下了一篇类似的程序,经过仔细的研究,终于读懂了一些C语言编程的根本过程和方法。 经过一波三折,终于开始正式编程。 编程是一件很枯燥很无聊的事情,但是出于完成作业,得到学分的压力,还必须强破自己坚持下去,按照老师所说的模块化思想,分局部的进行编写。而且编程是一件高精度、模范化的事情,稍有疏乎都会影响全局,也可能因为某一处的小的错误而导致整个程序的无法运行。所以认真仔细就是非常重要的了。开始的时候真的感觉编程是一件很无聊的事情,不过当一个程序运行成功的时候那种喜悦是无法言语的,那种成就感是无法比较的。又经过几天的努力和同学的讨论,终于把程序完成了,尽管程序还
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 政府公共关系(第二版)课件 第13章 政府公共关系危机管理
- 初中综合实践活动计划
- 《朝花夕拾》读后感作文10篇
- 商务工作计划3篇
- 2025年己二酸二甲酯合作协议书
- 2025年多功能水质现场监测仪项目合作计划书
- 2025年脱毛剂合作协议书
- 人教版初中化学总复习
- 吊车租赁合同范本
- 门市房租房协议
- 村集体经济入股分红协议书
- 中草药产业园规划方案
- 人力资源外包投标方案
- 护理文书书写规范
- MOOC 高等数学(上)-西北工业大学 中国大学慕课答案
- 无人机测试与评估标准
- 2024版国开电大法学本科《国际经济法》历年期末考试总题库
- 2023-年2月山东公务员录用考试《申论B》考试真题
- 中国人寿保险培训
- 儿童食物过敏的流行病学调查与风险因素分析
- 云边有个小卖部详细介绍
评论
0/150
提交评论