用文件实现的学生成绩管理系统 课程设计大作业

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

题目: 用文件实现的学生成绩管理系统

(含全套完整资料)

目的:

学生通过本次实验编程实现一个班级学生成绩的管理,使学生了解文件的主要操作(创建、读、写、增加和删除记录等)。

内容和要求

1、编写一个学生成绩管理的软件系统,语言不限。

2、软件中能够随时增加学生成绩记录(姓名、班级、

学号、课程名称、成绩),这些记录存放到磁盘文件中。

3、利用磁盘文件的系统接口函数编程实现对学生成绩

进行管理:以各种方式查询成绩、修改成绩;显示所有的学生成绩。

4、编写将一个班级的成绩复制到另一个文件的功能。

5、学习使用文件编程,实现指定班级成绩文件的删除

操作。

6、能够对学生成绩记录进行文件备份和还原。

7、本实验的目的是练习文件操作,因此该软件不能使用数据库存放信

息,只能用普通文件存放信息。

目录

学生成绩管理系统课程设计报告 (2)

一、需求分析 (2)

1、课程设计性质和目的 (2)

2、输入的形式和输入值的范围 (2)

3、输出的形式; (2)

4、程序所能达到的功能; (2)

5、测试数据: (2)

二、功能描述 (3)

三、总体设计 (3)

1、功能模块设计 (3)

2、其他模块代码设计(详参“程序清单”)//此处与“程序清单”Word文件有超链接功

能。 (4)

四、调试分析 (5)

五、测试结果 (5)

1、主界面:图5-1 (5)

2、录入学生信息界面:图5-2 (5)

3、显示统计数据界面:图5-3 (6)

4、查询学生成绩界面:图5-4 (6)

5、删除学生成绩界面:图5-5 (7)

6、插入学生成绩界面:图5-6 (7)

7、对已有学生成绩降序排列界面:图5-7 (8)

8、显示全部学生信息界面:图5-8 (8)

六、用户使用说明 (9)

七、课程设计的总结 (9)

八、附录(源代码) (10)

学生成绩管理系统课程设计报告

一、需求分析

1、课程设计性质和目的

该课程设计的主要任务是运用在《数据结构》(用面向对象方法C++语言描述)课程中学到的理论知识来指导实践,使我们了解面向对象与面向过程之间的区别,学会用所学知识解决实际问题,并且通过综合课程设计,提高大家的实践动手技能,培养我们独立分析分析问题和解决问题的能力。

2、输入的形式和输入值的范围

本系统是一个学生成绩管理系统,采用VC++6.0 编译器作为开发环境,这个环境是我们在学习C++的平台。输入数据类型主要是char、int、float等数据类型,输入内容包括:班级、学号、姓名、数据结构、C++ 程序设计、多媒体技术、大学英语、高等数学、大学体育、马克思主义政治经济学等数据。用户在输入学生数据时要保证输入数据格式的正确性,系统不会自动检测输入的数据是否正确,可用。具体要求(输入学生学号、班级姓名和课程成绩等的时候要按照其相应的数据类型进行输入,如:表1-1)。

3、输出的形式;

输出形式与输入形式类似,根据需要可以选择显示输入的各项内容,还可以选择显示计算好平均分后并排序后的记录,显示内容包括:班级、学号、姓名、平均分等数据。

4、程序所能达到的功能;

用户运行程序后进入系统主界面,在主界面用户可以输入所有学生的数据并保存到文件中,也可以读取文件中已有的学生数据。用户在保存数据的时候,如果保存位置没有文件则自动新建一个文件进行保存。本系统同时只能对一个数据文件进行相关操作,不能同时打开多个数据文件,其类似于单用户操作系统。

当用户读取学生数据后可对其进行显示,插入,删除,修改,排序,计算平均分等相关操作。用户在操作过程中可随时对当前文件进行保存到文件操作,以防止修改的数据丢失。

5、测试数据:

经过多次测试程序运行稳定,无致命错误。根据本次课程设计的要求对数据进行输入并分析数据输出结果。通过测试发现当用户正确输入时系统能够正确显示用户的输入,当用户输入错误时,系统并不会出现致命错误但其将显示非用户期望的数据。

二、功能描述

此成绩管理系统主要利用单链表实现,由如下功能模块实现:

1、录入模块。主要完成将学生记录存入单链表的工作。

2、显示统计数据模块。主要完成对自己所需的数据在链表内进行查询后的统计结果.

3、查询模块。主要完成对已有学生的学号、姓名等数据进行查询

4、修改模块。主要完成对已有学生的成绩或者其他信息,由于录入错误或者其他错误进行修改。

5、删除模块。主要用来删除不在需要的学生信息。

6、插入模块。主要是对漏录或者其他原因的学生信息,重新做一次录入信息。

7、学生成绩排序模块。用于对已有的学生信息,按照其成绩的高低对其排序。

8、显示学生成绩模块。是用来显示所有存在学生的全部成绩。

三、总体设计

1、功能模块设计

void main() /*主函数*/

{

for(;;)

{

switch(menu()) /*选择判断*/

{

case 1:

Input(stud);/*输入学生成绩*/

break;

case 2:

Statistic(stud); /*输出学生统计数据*/

break;

case 3:

Lookup(stud); /*查找学生成绩*/

cout<<"\t\t\t";

system("pause");

break;

case 4:

Modify(stud); /*修改学生成绩*/

cout<<"\t\t\t";

system("pause");

break;

case 5:

Delete(stud); /*按学号查找,删除学生信息*/

cout<<"\t\t\t";

system("pause");

break;

case 6:

Insert(stud);/*增加学生成绩*/

cout<<"\t\t\t";

system("pause");

break;

case 7:

Sort(stud); /*按平均分对成绩记录项进行降序排序*/

cout<<"\t\t\t";

system("pause");

break;

case 8:

Output(stud); /*显示全部学生成绩*/

cout<<"\t\t\t";

system("pause");

break;

case 0:

cout<>===============================\n"<

system("pause");

exit(0);

}

}

}

2、其他模块代码设计(详参“程序清单”)//此处与“程序清单”Word文件有超

链接功能。

每个函数的具体功能:

1)主函数main():定义学生结构体数组,调用录入、统计等函数对成绩表进行处理;

2)录入函数Input():输入班级到政治课成绩;

3)统计函数Statistic():计算平均成绩;

4)查询函数Lookup():查询指定学号学生成绩记录;

5)修改函数Modify():修改指定学号学生成绩记录;

6)删除函数Delete():删除指定学号学生记录;

7)插入函数Insert():按平均分顺序插入新记录。

8) 排序函数Sort():按平均分对学生成绩记录项进行降序排序;

9)输出函数Output():输出班级所有学生成绩记录;

相关文档
最新文档