学生成绩管理数据结构与算法

上传人:工**** 文档编号:497222834 上传时间:2023-10-01 格式:DOC 页数:11 大小:142.50KB
返回 下载 相关 举报
学生成绩管理数据结构与算法_第1页
第1页 / 共11页
学生成绩管理数据结构与算法_第2页
第2页 / 共11页
学生成绩管理数据结构与算法_第3页
第3页 / 共11页
学生成绩管理数据结构与算法_第4页
第4页 / 共11页
学生成绩管理数据结构与算法_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《学生成绩管理数据结构与算法》由会员分享,可在线阅读,更多相关《学生成绩管理数据结构与算法(11页珍藏版)》请在金锄头文库上搜索。

1、.数据构造与算法课程设计报告书题目: 学生成绩管理 班级:学号:*:指导教师:周期:2021-12-9至2021-12-13成绩:2021年 12月 13日. v.一、课程设计的目的与要求一课程设计目的与任务目的:通过本课程设计的实践,全面总结c+课程学习中的数据类型、构造类型、数组、函数、指针、构造体等根本概念,掌握其使用方法。掌握面向对象程序设计中有关类、对象、继承、重载、多态性、输入输出流类体系、文件操作的根本概念,初步学会用类与对象这种面向对象的程序设计方法编写用用程序。培养使用面向对象的程序设计方法编写与计算机程序的功能。数据构造是一门实践性很强的课,必须重视实践环节。要通过实践积累

2、自己的知识。要求:通过设计一个学生成绩管理系统要求以学生成绩管理业务为背景,设计一个“学生成绩管理系统程序。对于学校来讲,学生成绩管理系统是不可缺少的组成局部,主要是对学生成绩资料的录入、浏览、插入、查询和删除等根本功能的实现二题目要求 用链表数据构造完成一个学生管理系统。设学生成绩以一个学生一条记录的形式存储,每个学生记录包含的信息有学号和各门功课的成绩。设每位学生学习数学、英语、语文、物理和化学5门课程。具体功能要求如下:1、学生信息录入功能:输入每个学生的信息:学号、*、性别、数学、语文、英语、物理、化学五门课的成绩。可插入一个或多个学生信息到当前编辑的班级数据中。可删除一个或多个学生信

3、心。2、文件保存功能:学生信息每一个班存为一个数据文件,数据文件可在程序中翻开、编辑和重新保存。3、查询功能:浏览所有学生信息。按学号查询信息。按*查询信息。查询一个班的总成绩和平均成绩。查询某一门课的总成绩和平均成绩。查询某一门课分数段学生数。4、输出功能:按学号输出一个班学生信息:学号、*、性别、和各科成绩到文件。按总成绩输出从高到低输出学号、*信息。 二、设计正文1、系统分析1自定义数据构造体,用于存储学生的根本信息,然后定义一个单链表构造,并为该链表定义构造变量和指针变量。2运用指针进展下一条记录的地址查找。3运用了链表的插入排序法对学生成绩的总分进展了排序。2、功能详细描述及框图功能

4、:(1)、成绩的录入:包括学生学号、*、性别和各门课程成绩的录入。(2)、成绩的查询:可以根据学号或*查询某个学生的成绩。(3)、 成绩的修改:可以根据学号或*来修改相应的学生的成绩。(4)、 数据的删除:可以根据学号或*指定删除某个学生的数据。(5)、成绩的统计分析:包括总人数、最高成绩、最低成绩、平均成绩、各个分段的人数100-90、89-80、79、69-60、59、50以下、及格率。(6)、总成绩和平均成绩的查询:可以根据学号或*查询。(7)、浏览所有学生信息。(8)、将所有学生信息保存成文件。(9)、翻开指定的数据文件。(10)、按总成绩排序输出学生信息。(11)、按学号顺序输出学生

5、信息,并可保存成文件。框学生成绩管理系统成绩管理学生根本信息输入学生成绩查询学生信息删除学生信息修改学生信息插入学生成绩按平均分查询信息保存文件退出本系统按总分查询浏览学生信息 图11系统构造功能图3、主要功能逻辑过程和实现算法功能逻辑过程:开场值1,3,4值8值9值7,2,6,5值10,11文件保存功能模块学生信息录入模块文件翻开功能模块查询功能模块报表输出功能模块用户输入,并将值保存至m中m完毕图系统流程图实现算法:#include#include#include#includeusing namespace std;const int M = 20;class stucopypublic

6、: char id20; char sex10; char name10; double grade5; double sumsum; double average;/;class student friend class list;public: char id20; char sex10; char name10; double grade5; student() int i; next=0; for (i=0; i20; i+) idi=0; for (i=0; i10; i+) sexi=0; for (i=0; i10; i+) namei=0; void s(); void set

7、id(char id120) for(int i=0; i20; i+) idi=id1i; void setsex(char sex110) for(int i=0; i10; i+) sexi=sex1i; void setname(char name110) for(int i=0; i10; i+) namei=name1i; void setgrade(double grade15) for(int i=0; i5; i+) gradei=grade1i; student *next; char * outid() return id; ; char * outsex() retur

8、n sex; ; char * outname() return name; ; double outsum() double sum=0; for(int i=0; ioutgrade(i); return sum; double outav() return this-outsum()/5; double outgrade(int i) return gradei; ; void intgrade(int);void student:intgrade(int j) switch (j) case 1: coutgrade0; break; case 2: coutgrade1; break

9、; case 3: coutgrade2; break; case 4: coutgrade3; break; case 5: coutgrade4; break; void student:s() coutid; coutname; coutsex; coutgrade0; coutgrade1; coutgrade2; coutgrade3; coutgrade4;class listprivate: double high5,low5;public: student *last,*first; double totoal; list() last=0; first=0; ; list()

10、; void instu();void outstu(char *); int delstu(char *n); void outstu1(char *); int delstu1(char *n); void outsum(char *); void outsum1(char *); void think(); void search(char s10,int);void search1(char s20,int); double hi(int i); double lo(int i); void av(int i); void ev(int i); void scanall();int main()stucopy stuM; stucopy stutemp; list will; student *p, *p1=new student(),*q; ifstream input; ofstream output; char file20,classname20,temp80,id20,name9,sex110; int m=0,n=0,j=0,i=0; double grade15; for(i=0; i20; i+) idi=0; for(i=0; i9; i+) namei=0;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号