成绩管理系统设计报告

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

*******************实践教学*******************兰州理工大学计算机与通信学院2013年春季学期C程序设计课程设计题目:学生成绩管理系统专业班级:计算机科学与技术()班姓名:李文辉学号:12240109指导教师:王连相成绩:2/30前言C语言作为一门最通用的语言,在过去很流行,将来依然会如此。几乎每一个理工科或者其他专业的学生毫不例外地要学习它。本课程是继《C/C++程序设计教程》(王连相)课程之后,训练学生综合运用本课程知识,提高学生综合应用知识的能力、分析问题、解决问题的能力和利用C语言进行综合系统设计的实践技能。重点突出:指针是C语言的重点和难点,本书用了大量的篇幅,从不同方面对其进行讲解,并列举了大量的实例,帮助读者理解并掌握指针。经过一学期的学习,我们对其知识的认知有了很大提高,但是,在面对比较强大的编程时,还是无从入手,所以,在所学知识的基础上,我们再加以拓展,利用两周时间编个主题明确、具有一定使用价值的小程序,以提高自身的编程水平以及团队协作能力。中文摘要:该系统的任务就设计一个学生信息管理系统,执行如增加新进学生信息、变更学生信息、删除学生信息、查询等操作,而我们学过C/C++程序设计教程》(王连相)课程后,掌握了一些语法知识和编程经验,此次课程设计由第六组成员经过两周的时间编写的,发现了在编程过程中的一些不足和经验的欠缺,在以后的学习过程中还要更加努力。关键字:学生信息,函数,信息管理系统3/30目录1.需求分析…………………………………………………………………………………….…………………..………41.1功能设计简要…………………………………………………………………………………………………………41.2各板块功能设计……………………………………………………………………………………..…….……41.3编程环境与工具………………………..………………………………………………………………….….…......52程序的总体模块…………………………………………………………………………………………………..……53.详细设计...............................................................................................................................................53.1数据定义…………………………………………………………………………………………………………..….....63.2主控模块设计………………………………………………………………………………………….……………..…63.3录入模块……………………………………………………………………………………………………………...…73.4编辑成绩……………………………………………………………………………………………………….…….…74编码…………………………………………………………………………………………………………………….….74.1录入数据函数INPUT()………………………………………………………………………………..……….………84.2读取数据函数READ()…………………………………………………………………………………..………..……84.3编辑数据函数EDIT()………………………………………………………………………………………….………84.4保存数据函数SAVE()…………………………………………………………………………………………..….…..85程序的调试………………………………………………………………………………………..…85.1登录及主菜单界面……………………………………………………………………………………...……..……85.2录入数据…………………………………………………………………………………………………..…..……..95.3编辑学生信息主界面………………………………………………………………………………………….……..…95.4查询学生成绩主界面……………………………………………………………………………………….…….……115.5显示学生成绩……………………………………………………………………………………………………..…....125.6学生信息保存…………………………………………………………………………………………………….……125.7学生成绩排序…………………………………………………………………………………………………....……125.8从文件读取学生成绩……………………………………………………………………………………………...….135.9从文件中删除成绩…………………………………………………………………………………………………….136设计总结与心得体会…………………………………………………….…………………........…137参考文献………………………………………………………………….……………….……...…148致谢………………………………………………………………………………………….……………………..……149附件(源代码)…………..………………………………………………..……………………...……144/301、需求分析1.1功能设计简要此学生成绩管理系统包含了每个学生的学期、班级、姓名、性别、成绩等信息。每个人的信息定义在一个结构体变量中。其结构如下:structstudent{intterm;charclas[20];intno;//学号charname[20];//姓名charsex[4];//性别floatscore1;//成绩1floatscore2;//成绩2floatscore3;//成绩3floatsort;//排序成绩floatave;//平均分floatsum;//总分};系统通过显示成绩、编辑成绩、查询成绩等程序来实现学生成绩管理系统的各功能。各功能的调用通过主函数中的switch语句来实现。1.2各板块功能设计1)成绩录入通过录入成绩模块,来实现后续的功能,进而管理成绩。2)显示成绩通过设计这一个模块,来实现学生成绩信息的显示。以便用户浏览学生成绩信息。3)成绩排序此模块可以实现学生成绩的总成绩排序、单科排序。4)编辑成绩通过设计一个模块,当加入学生信息的时候,来实现新生信息的添加、删除、修改,模块具有多级子菜单,使用方便灵活。5/305)查询成绩通过设计一个模块,这个模块可以按学生的学期、班级、姓名、学号来查询该生的所有信息,并显示该生的所有信息,以便查询者阅读.6)从文件中读入成绩此模块主要是减少用户输入量,以便更好的管理成绩。7)删除文件中信息此模块主要管理文件中的学生信息。8)保存学生信息此模块主要存储学生成绩数据。1.3编程环境与工具编程语言采用C语言,开发环境为VisualC++。2程序的总体模块学生成绩管理1显示成绩信息2显示学生成绩3学生成绩排序4编辑学生信息5查询学生信息6文件中读入学生信息7删除文件中学生信息8保存学生信息9退出系统6/303详细设计3.1数据定义根据系统要求,系统中需要保存的数据有成绩的信息,其结构如下:数据项名称数据项系统表示数据类型数据长度备注学期term整型MAX班级class字符串MAX姓名name字符串MAX学号no字符串MAX性别sex字符串MAX成绩score浮点型MAX平均分average浮点型MAX总分sum浮点型MAX3.2主控模块设计开始输入用户名密码选择显示成绩成绩排序编辑成绩查询成绩读入成绩从文件删保存信息输出退出输入成绩7/303.3录入模块否是YN3.4编辑学生信息其它4编码开始选择1Y/N录入数据据结束开始1增加学生信息2删除学生信息3修改学生信息选择n结束8/304.1录入数据函数input()函数原型:voidinput()功能描述:录入文件信息,并保存到内存中,以便在后续工作中使用。4.2读取数据函数read()函数原型:voidread()功能描述:将文件中的信息读取到内存中,并打印到屏幕上,如果路径和文件名不存在,提示保存失败并重新读取。4.3编辑数据函数edit()函数原型:voidedit()功能描述:对刚开始录入信息或者提取的文件中的信息进行学生成绩信息的添加、修改、删除和排序。4.4保存数据函数save()函数原型:voidsave()功能描述:将数组stu中的now_no个数据写入到磁盘文件filepath中,如果路径和文件名不存在,提示保存失败并重新保存。5程序的调试5.1登录及主菜单界面9/305.2录入数据5.3编辑学生信息主界面10/301)增加学生信息2)删除学生信息3)修改学生信息11/305.4查询学生成绩主界面1)按姓名查询2)按班级查询3)按不及格成绩查询12/305.5显示学生成绩5.6学生信息保存5.7学生成绩排序13/305.8从文件读取学生成绩5.9从文件中删除成绩6设计总结与心得体会通过这次的课程设计,使我了解了一个简单的学生选课系统的设计过程,并且基本掌握了MicrosoftVisualC++的基本用法,掌握《C语言程序设计》课程的基本知识及其应用情况,加深对该课程的理解,在这次设计过程中使我对编程和程序的开发建立了浓厚的兴趣。在设计过程中遇到了很多的问题,但是最后通过自己的努力或者在网上寻找最后都得到了解决,虽然这次的设计是一个很小的程序但是设计这样的程序真的不简单呀,首先要想好设计的界面,以及这些界面是怎样连接起来的。然后要考虑数据库怎么样和应用程序连接起来。通过此次编程培养了我们结构化程序设计的思想,加深了对高级语言基本语言要素和控制结构的理解,锻炼我们独立思考制作程序的能力,并且掌握了一些课程设计的相关知识与实践操作能力,为以后的学习提供了锻炼的机会。但是由于设计时间较短,所以该系统还有许多不尽如人意的地方,比如排序方面的欠缺以及读取文件的不足。这些都有待进一步改善。14/307参考文献[1]C/C++程序设计教程(第二版),王连相,中国铁道出版社,2011[2]C语言程序设计实验与课程设计教程,清华大学出版社,2011[3]C语言程序设计,谭浩强,清华大学出版社,19998致谢在编写程序的过程中,我们得到了王连相老师的精心指导以及孜孜不倦的教诲,在老师的指导下,我们的能力得到了提高,同时养成了科学、严谨的作风和习惯,在此,我们对老师的精心栽培表示衷心的感谢!也感谢我们专业同学对我的帮助和指点,以及感谢我的舍友在非常时期,在生活和学习上的慷慨帮忙。9附件(源程序)#includestdio.h#includeconio.h//通用输入输出库#includestdlib.h//包含了的C语言标准库函数#includestring.h#defineMAX100voidmenu();/*菜单*/voidinput();/*输入数据函数*/voidsort();/*排序数据函数*/voidsort0();/*平均分排序*/voidsort1();/*科目1排序*/voidsort2();/*科目2排序*/voidsort3();/*科目3排序*/voiddel();voidmodify();voidinsert();voiddisplay();/*显示数据函数*/voidedit();/*编辑成绩函数*/voidaverage();/*平均值函数*/voidfind();/*查询学生成绩*/voidfind1();/*按姓名查询*/voidfind2();/*按班级查询*/voidfind3();/*按成绩不及格查询*/voidsave();/*保存数据函数*/voidread();/*读出数据函数*/voiddel_file();/*删除文件函数*/intnow_no=0;structstudent{15/30intt

1 / 30
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功