程序设计学生成绩管理系统.docx

上传人:b****2 文档编号:1904585 上传时间:2022-10-25 格式:DOCX 页数:12 大小:225.37KB
下载 相关 举报
程序设计学生成绩管理系统.docx_第1页
第1页 / 共12页
程序设计学生成绩管理系统.docx_第2页
第2页 / 共12页
程序设计学生成绩管理系统.docx_第3页
第3页 / 共12页
程序设计学生成绩管理系统.docx_第4页
第4页 / 共12页
程序设计学生成绩管理系统.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

程序设计学生成绩管理系统.docx

《程序设计学生成绩管理系统.docx》由会员分享,可在线阅读,更多相关《程序设计学生成绩管理系统.docx(12页珍藏版)》请在冰豆网上搜索。

程序设计学生成绩管理系统.docx

程序设计学生成绩管理系统

程序设计——学生成绩管理系统

LT

 

图目录

1.问题的描述

设计一个学生成绩管理系统,对上学期的本班的学习成绩进行管理,可以用数组来设计这个程序,具有查询和检索功能,并且能够对指定文件操作,也可将多个文件组成一个文件。

1.1设计内容

1、每一条记录包括一个学生的学号、姓名、性别、各门课成绩(上学期的科目)、平均成绩。

2、输入功能:

可以一次完成若干条记录的输入。

3、显示功能:

完成全部学生记录的显示。

4、查找功能:

完成按姓名或学号查找学生记录,并显示。

5、排序功能:

按学生平均成绩进行排序。

6、插入功能:

按平均成绩高低插入一条学生记录。

7、将学生记录存在文件student.dat中。

8、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!

1.2设计要求

已知有存储本班学生记录(包括学号、姓名、科目成绩、性别、)的文件student.dat,所有学生以学号从小到大排序(该文件自行建立)。

要求编程序实现查询、排序、插入、删除诸功能。

具体要求如下:

要求显示如下界面

****************************************

1--------------查询

2--------------排序

3--------------插入

4--------------删除

****************************************

通过选择1-4来确定要做哪一个操作。

若选1,则出现如下界面

****************************************

1.1----------按学号查询

1.2----------按姓名查询

1.3----------按成绩查询

****************************************

通过选择1.1-1.3来确定要做哪一个操作,其中:

按姓名查询用顺序法实现;按成绩查询实现查询成绩小于m分的学生;找到该生将学生记录输出到屏幕,若查无此人,输出相关信息。

若选2,则按成绩从大到小排序,姓名,学号顺序也随之调整。

若选3,将一个新学生记录按学号顺序插入,并把结果保存到文件student.dat中。

若选4,删除指定学生的记录,并把结果保存到文件student.dat中。

不同的模块都要有出错处理,并能给出出错提示。

如输入数据错误,文件操作错误等等

以上各个功能均编写成子函数,由主函数调用实现。

利用结构体数组实现学生成绩的数据结构设计;

完成设计任务并书写课程设计报告。

2.总体设计

根据上面的题目,可以将这个系统分为以下模块:

查询模块.、排序模块.、插入模块、删除模块.如图:

 

主流程图2.1

 

3.详细设计

各功能模块的具体实现算法——流程图

查询流程图3.1

排序流程图3.2

插入流程图3.3

删除流程图3.4

4.数据结构设计描述

4.1结构

structstudent{

intnum;

charname[20];

charsex[10];

intcgrade;

integrade;

intmgrade;

doubleaverage;

};

4.2主函数功能介绍

主函数一般设计得比较简单,只提供输入,处理和输出部分的函数调用,其中各功能模块用菜单方式选择.菜单选用switch-case来选择

4.3各个子函数功能介绍

1、查询模块:

可用voidfind(FILE*f)来实现。

找到就输出此学生全部信息包括学生的姓名、学号和性别以及学生的语文、数学、英语的成绩。

用fscanf()函数将文件中的数据读入,并判断设置的两个结构空间是否有足够的空间。

在做选择,按学号,姓名,成绩三个不同的途径查找学生,这里用if-else来选择判断。

查找中都用一个for循环找出查询的学生,并输出该学生的信息。

2、排序模块:

可用voidsort(FILE*f)来实现。

对学生的成绩进行排序。

用fscanf()函数将文件中的数据读入,并判断设置的两个结构空间是否有足够的空间。

用两重for循环比较学号大小并将学号从小到大排序。

3、插入模块:

可用voidinsert(FILE*f)函数来实现。

其中通过学号的大小来比较的,并且以此来排序。

用fscanf()函数将文件中的数据读入,并判断设置的两个结构空间是否有足够的空间。

判断文件中是否有学生,若有学生(if),先用两重for循环比较学号大小并将原有学生学号从小到大排序,然后用一个for循环找出你要插学生的位置,再用一个for循环将这个位置后面的数都向后移一位,再将要插学生的信息插入,再输出并保存。

若没有学生(else),直接输出并保存到文件中。

4、删除模块:

可用voiddele(FILE*f)函数来实现。

删除指定姓名的学生

用fscanf()函数将文件中的数据读入,并判断设置的两个结构空间是否有足够的空间。

输入要查找的学生的姓名,先查找是否存在该学生,若不存在,直接处处不存在该学生;若存在,将该学生位置后面的学生向前进一位,再输出并保存。

 

5.调试分析

包含各模块的测试用例,及测试结果。

开始输入5时,输入错误!

再用插入操作

插入

按学号查询

按姓名查询

按成绩查询

删除操作

排序

6.总结和心得

课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对我们的实际工作能力的具体训练和考察过程.随着科学技术发展的日新月异,当今计算机应用在生活中可以说得是无处不在。

因此作为二十一世纪的大学来说掌握程序开发技术是十分重要的,而C语言又是最常见,功能最强大的一种高级语言,因此做好C语言课程设计是十分必要的。

回顾起此次课程设计,至今我仍感慨颇多,的确,自从拿到题目到完成整个编程,从理论到实践,在一个星期的日子里,可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。

通过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。

在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对一些前面学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体,指针,链表……通过这次课程设计之后,我们把前面所学过的知识又重新温故了一遍。

   我做的是学生成绩管理系统,虽然是很简单的一个小的程序,但对我一个初学者来说却是一个很大的困难。

更加是第一次做课程设计,所以连续做了几天却丝毫没有进展,最主要是不知从何开始,这个时候才知道上课老师们不厌其烦的教导是多么的宝贵,这个时候才后悔上课的时候没有认真的听讲。

可是现在一切都晚了,还好时间还算是充裕,只好拿出书本重新复习一下。

特别是结构体,指针的部分,几乎是一片空白。

不过经过几天的努力,大体上把课本上的知识点看了一遍,知识点也都基本是撑握了,所以一下一步就是开始正式的编程序了。

不过毕竟是个新手,还是不知如何下手,于是就在网上下了一篇类似的程序,经过仔细的研究,终于读懂了一些C语言编程的基本过程和方法。

经过一波三折,终于开始正式编程。

  编程是一件很枯燥很无聊的事情,但是出于完成作业,得到学分的压力,还必须强破自己坚持下去,按照老师所说的模块化思想,分部分的进行编写。

而且编程是一件高精度、模范化的事情,稍有疏乎都会影响全局,也可能因为某一处的小的错误而导致整个程序的无法运行。

所以认真仔细就是非常重要的了。

开始的时候真的感觉编程是一件很无聊的事情,不过当一个程序运行成功的时候那种喜悦是无法言语的,那种成就感是无法比拟的。

又经过几天的努力和同学的讨论,终于把程序完成了,尽管程序还是有很多错误和漏洞,不过还是很高兴的。

  通过这次课程设计,使我对C语言有了更进一步的认识和了解,要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,我也发现我的好多不足之处,首先是自己在指法上还不行,经常按错字母,通过学习也有所改进;再有对C语言的一些文件运用方面不太了解,还有对函数调用的正确使用不够熟悉,还有对C语言中经常出现的错误也不了解,通过实践的学习,我会更加注视实践操作,使自己便好地学好计算机。

 

7.参考文献

[1]何钦铭、颜晖,C语言程序设计,高等教育出版社

 

8.答辩记录

 

9.教师意见

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1