学生成绩管理系统课程设计实验报告
字符串比较函数实现学生成绩管理系统是一个用于管理学生基本成绩信息的系统,可以存储多种信息并进行各种操作。首先,该系统能够实现数据的输入,包括学生的班级、学号、姓名、性别、年龄、选修课程编号、名称、考试成绩、平时成绩和综合成绩等信息。同时,如果发现输入有误或需要修改学生信息,可以利用修改函数进行修改,并且可以修改任意需要修改的信息。此外,当需要添加学生信息时,可以使用添加函数及时补充所需信息。当所有学生信息输入完整无误后,该系统可以进行信息查询,支持按姓名和学号查询,能够显示出该生的所有信息。如果输入信息不正确,系统会提示错误并允许重新输入。此系统还可以进行信息删除,当有学生退学或休学时,可以使用删除函数删除特定的学生信息,从而减少冗余信息。该系统还可以显示输入的所有信息,并计算每个同学的平均成绩,对所有学生按平均成绩高低进行排序,输出排序后的成绩表。此外,该系统还能列出不及格学生的学号、姓名、课程和成绩,方便进行统一的管理。
该系统的模块设计清晰,各模块的算法简单高效,整个系统由主函数调用各个模块而组成。可以将函数分为数据录入模块、数据修改模块、数据添加模块、数据查询模块(可分为姓名查询和学号查询)、数据删除模块、数据统计模块(包括成绩显示模块、成绩计算及排序模块和成绩分类模块)和文件保存模块,共计七大模块。主函数中包含界面模块。主控模块是整个系统的模块交汇点,使用者使用系统时先进入主控模块,通过主控模块可以调用任意的模块,达到预期的功能。
2.数据录入模块:该模块允许录入学生的各种数据,并将信息存储在数组中,以便其他模块调用。
3.数据修改模块:该模块可以修改已有的学生信息。当输入要修改的学生信息时,该模块会自动查,若未到则显示不存在,若到则进入下一级列表,操作者可以根据界面标号进行任意修改。
4.数据添加模块:该模块将学生的信息完整地存储在一个结构体数组中,以便其他模块调用。
5.数据查询模块:该模块可以检索并筛选出符合要求的信息,并显示列表。若未搜索到信息,则显示未到。(1)按
姓名查询(2)按学号查询
6.数据删除模块:该模块可以删除任意指定学生的信息。
该模块首先会提醒操作者输入特定的学号,数据输入后进行搜索。若无此学生的信息,则显示不能到;若到此生信息,则显示删除成功。
7.数据统计模块
1)成绩显示模块:输入选择号后,该模块可以显示已经
输入系统的学生信息。
2)成绩计算及排序模块:该模块可以利用平均成绩函数
计算每位学生的平均成绩,并按学生平均成绩的高低进行排序,然后将学生姓名列表显示。
3)成绩分类模块:该模块可以查系统中不及格学生的
信息,然后将该生的学号、姓名、不及格科目及分数显示出来。
8.退出系统模块
三、数据结构设计
为了更好的管理和使用数据,本系统使用了数组来存储数据。定义了结构体来存放学生的各种类型的数据,使存放更合理,便于管理。
为避免学生基本信息结构体stu太长,嵌套定义了一个选修课程结构体course。
struct course
课程编号整型int num;
课程名字符串char name[10];
考试成绩浮点型float exam;
平时成绩浮点型float usual;
综合成绩浮点型float total;
struct stu
专业班级整型int class;
学生编号整型int num;
学生姓名字符串char name[10];
性别字符串char sex[2];
年龄整型int age;
嵌套定义课程信息struct course course[2];
平均成绩浮点型float avescore;
程序后续模块都会用到以上结构体的信息,循环结构得以控制,能随时调用结构体中的信息。
此函数实现查询功能。在屏幕提示下,操作者可选择按学号或姓名查询,接着输入相应的信息。查询成功后,会显示该学生的详细信息,否则显示“无学生信息”。
6.void del()
此函数实现删除功能。在屏幕提示下,操作者可选择按学号或姓名删除,接着输入相应的信息。删除成功后,会提示“删除成功”,否则显示“无学生信息”。
7.void sort()
此函数实现排序功能。在屏幕提示下,操作者可选择按学号或平均分排序,接着按照选择的方式进行排序。排序成功后,会显示排序后的学生信息。
8.void output()
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论