C语言学生成绩管理系统增加查询修改排序统计文件Word格式.docx

上传人:b****2 文档编号:15106261 上传时间:2022-10-27 格式:DOCX 页数:36 大小:399.44KB
下载 相关 举报
C语言学生成绩管理系统增加查询修改排序统计文件Word格式.docx_第1页
第1页 / 共36页
C语言学生成绩管理系统增加查询修改排序统计文件Word格式.docx_第2页
第2页 / 共36页
C语言学生成绩管理系统增加查询修改排序统计文件Word格式.docx_第3页
第3页 / 共36页
C语言学生成绩管理系统增加查询修改排序统计文件Word格式.docx_第4页
第4页 / 共36页
C语言学生成绩管理系统增加查询修改排序统计文件Word格式.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

C语言学生成绩管理系统增加查询修改排序统计文件Word格式.docx

《C语言学生成绩管理系统增加查询修改排序统计文件Word格式.docx》由会员分享,可在线阅读,更多相关《C语言学生成绩管理系统增加查询修改排序统计文件Word格式.docx(36页珍藏版)》请在冰豆网上搜索。

C语言学生成绩管理系统增加查询修改排序统计文件Word格式.docx

指导教师:

彭明

职称:

教授_

2012年12月8日

摘要

学生成绩是高校人才培养计划的重要组成部分,是实现人才培养目标、培养学生科研能力与创新思维、检验学生综合素质与实践能力的重要手段与综合性实践教学环节。

目前,学校工作繁杂、资料重多,虽然各类管理信息系统已进入高校,但还未普及,而对于学生成绩管理来说,目前还没有一套完整的、统一的系统。

因此,开发一套适和大众的、兼容性好的系统是很有必要的。

我们有必要开发学生成绩管理系统来对学生成绩档案进行数字化管理。

既可减轻学院教职员工工作压力,比较系统地对教务、教学上的各项服务和信息进行管理,又可加快成绩查询速度、加强成绩管理,使各项管理更加规范化。

本系统主要完成对学生成绩的管理,包括添加、修改、删除,查询,统计信息以用户管理等六个方面。

系统可以完成对各类信息的浏览、查询、添加、删除、修改等功能

关键词:

c语言;

学生成绩管理系统;

增加;

查询;

修改;

排序;

统计;

文件

Abstract

Studentgradesisanimportantpartoftalentcultivationofcollege。

StudentFilesmustremainwithintheStudentServices(orsimilarpurposearea)atalltimesandshouldnotberemovedfromtheseareasunlessrequiredforspecificpurposessuchastodealwithothercasessuchaslegal,disciplinary,grievancesetc,howeveroncethosecaseshavebeendealtwiththefilesmustbereturned,unalteredtotherespectiveStudentServicearea.Thissystemisastudentcurriculumandtheresultmanagementsystemmanagementsystem,itisinauniversitieseducationaladministrationmanagementsystemmanagementsystemsub-system.Themainuseristhestudent,theteacherandthemanager.Thesystemfacilitatedthestudenttochoosetheclassandtolookuptheminute.Hasfacilitatedteacher'

steachingmanagementandthestudentresultinput.Thesystemhasmoremoreimportantlyfacilitatedtheschooleducationaadministrationmanagement

Keyword:

CLanguag;

StudentScoreManagementSystem;

aggrandize;

inquire;

amend;

sort;

statistics;

document

1.课设目的………………………………………………………1

2.课程论文题目…………………………………………………1

3.程序设计思路…………………………………………………1

3.1需求分析……………………………………………………1

3.2主函数分析…………………………………………………2

3.3功能模块设计………………………………………………2

3.3.1菜单模块…………………………………………………2

3.3.2增加模块…………………………………………………2

3.3.3查询模块…………………………………………………2

3.3.4修改模块…………………………………………………2

3.3.5排序模块…………………………………………………3

3.3.6统计模块…………………………………………………3

4.功能模块流程图………………………………………………4

4.1增加模块流程图……………………………………………4

4.2查询模块流程图……………………………………………5

4.3修改模块流程图……………………………………………5

4.4排序模块流程图……………………………………………6

4.5统计模块流程图……………………………………………6

5.数据结构设计………………………………………………6

6.算法设计……………………………………………………7

7.程序运行结果………………………………………………8

7.1菜单模块运行结果…………………………………………8

7.2增加模块运行结果…………………………………………8

7.3查询模块运行结果…………………………………………8

7.4修改模块运行结果…………………………………………9

7.5排序模块运行结果…………………………………………9

7.6统计模块运行结果…………………………………………10

7.7打开文件模块运行结果……………………………………10

7.8保存模块运行结果…………………………………………10

8.编程中遇到的困难与解决方法……………………………10

9.实验总结……………………………………………………10

致谢……………………………………………………………11

参考文献………………………………………………………12

附录……………………………………………………………13

1.课设目的

通过本课程设计巩固《C语言程序设计》课程教学成果,深入理解结构体、指针、链表、动态分配内存和文件操作等C程序设计中的中高级技术,熟练掌握C语言的调试方法,初步培养良好的编程习惯和编程风格,初步学习程序文档的撰写方法。

2.程序论文题目

创建一个学生管理系统。

学生包含以下信息项:

学号,姓名,性别,语文成绩,数学成绩,英语成绩,物理成绩,化学成绩,总分、平均分。

系统的主要功能包括:

(1).创建学生成绩信息文件,根据提示输入学生的各项信息,计算出总分和平均分,然后按学号对学生信息进行排序,并将排序后的学生成绩信息存储到一个二进制文件中。

(2).增加学生信息,在原有学生信息文件的基础上增加新的学生成绩信息,要求:

增加后的学生信息仍按学号排序,并继续保存至原文件。

(3).删除学生信息,提示用户输入要进行删除操作的学号,如果在文件中有该信息存在,则将该学号所对应的学生信息删除,否则输出提示信息,并提示用户选择是否继续进行删除操作。

(4).修改学生信息,提示用户输入要进行修改操作的学号,如果在文件中有该息存在,则将提示用户输入该学号对应的要修改的选项,结果保存至原文件,并提示用户选择是否继续进行修改操作。

(5).按不同条件对学生信息进行查询操作,输出满足条件的学生信息。

a按学号查询,输入一个学号,输出对应的学生信息。

b按姓名查询,包括精确查询(输入全名),模糊查询(输入姓)。

c按学院查询,输入学院名称,输出该学院的全部学生的信息。

(6).按不同条件对学生成绩进行统计工作。

a.按总分对学生信息进行排序(由高到低),输出排序后的信息,并将排序后的学生信息存放到一个新的二进制文件中。

b.分别找出3门课程成绩最高和最低的的学生,并输出他们的信息。

3.程序设计思路

3.1需求分析

可将系统的设计分为:

菜单模块,增加信息模块,修改信息模块,排序模块,统计模块,保存文件模块,打开文件模块,显示模块。

a.菜单模块为用户的选择进行提示。

b.增加信息模块用于增加学生的学号,姓名,语文成绩,数学成绩,语成绩,物理成绩,化学成绩,总成绩,平均分。

c.修改信息模块用于对学生的学号,姓名,语文成绩,数学成绩,英语成绩,物理成绩,化学成绩,总成绩,平均分等各种信息进行修改。

d.排序模块用于对学生的学号,姓名,总分进行排序,每种排序方法对于有升序排序和降序排序两种排列方式

e.统计模块用于对学生的各科成绩进行一个汇总分析。

可统计出每一科的最高分,最低分以及平均分。

3.2.主函数设计

主函数提供输入,处理,输出部分的函数的调用,其中各个功能模块用菜单方式选择,即在主函数里显示一系列功能选择,判断后,是否调用某个功能用了switch()选择功能

3.3.各功能模块设计

3.3.1.菜单模块:

定义了字符变量c,用户根据相应的提示进行选择,最后将字符变量返回main()函数,根据c的不同值,调用不同的函数

3.3.2.增加信息模块。

输入要增加的信息条数num。

如果原来学生的数量为0.那么学生的数量为num,将要输入的学生信息依次放在指针位置为0~(num-1)的位置,然后调用count函数,按总成绩对学生进行排名,并在屏幕上显示。

如果原来学生数量不为0,询问是否覆盖原来的数据,如果选择覆盖,那么学生的数量为num,将要输入的学生信息依次放在指针位置为0~(num-1)的位置,然后调用count函数,按总成绩对学生进行排名,并在屏幕上显示。

如果不选择覆盖,那么学生个数等于原个数加上新增数,将信息依次放在指针位置为numstus~umstus+num-1)的位置,然后调用count函数,按总成绩对学生进行排名,并在屏幕上显示。

最后返回主函数。

3.3.3.查询信息模块。

如果学生数量为0,没有信息可查询,返回主函数。

如果学生人数不为0,则询问用户要选择的查询方式,有3种查询方式供选择,分别为按学号查询,按姓名查询,按名次查询。

对于按学号查询,将输入的学号与各个学生的学号相比较调用格式为strcmp(str,stud[i].number)。

如果输入的学号与某个学生的学号相等,则输出该学生的全部信息。

对于按姓名查询,将输入的姓名与各个学生的姓名相比较,调用格式为strcmp(str,stud[i].name)。

如果输入的姓名与某个学生的姓名相等,则输出该学生的全部信息。

对于按名次查询,将输入的名次与各个学生的名次相比较。

如果输入的名次与某个学生的名次相等(num==stud[i].index),则输出该学生的全部信息。

3.3.4.修改模块。

果学生人数不为0,则调用查询函数findrecord(pointer),查询函数返回一个整型数据i,则修改函数对地i个学生的信息进行修改。

修改完毕后,重新对学生的总成绩进行排名,并在屏幕显示修改之后的信息。

如果要删除信息,则调用删除函数deleterecord(),修改完毕后,重新对学生的总成绩进行排名,并在屏幕显示修改之后的信息。

如果还要修改其他信息,则返回开始处继续执行。

最后返回主函数

3.3.5.排序模块。

如果学生数量为0,没有信息可排序,返回主函数。

如果学生人

数不为0,询问用户要选择的排序方法。

输入1,则按学号进行排序,可对学号进行升

序排序,降序排序。

如果进行降序排序,调用函数sortnum(p),如果进行升序排序,则

调用函数sortnum2(p);

输入2,则按姓名进行排序,可对姓名进行升序排序,

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

当前位置:首页 > 初中教育 > 学科竞赛

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

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