学生基本成绩管理系统。
需求分析。编写目的:
学生成绩管理是学校管理的一个重要方面,数据量巨大,人工管理方式以及人为处理方式工作繁复、负担重。为方便学校管理,。
需求概述:1、增加学生成绩记录;
2、显示学生成绩;
3、学生成绩排行;
4、查找学生成绩;
5、删除学生成绩;
6、插入学生成绩;
7、清空所有数据;
8、安全退出系统;
需求说明:
学生成绩包括:学号,姓名,语文,数学,英语,总分;
录入的学生成绩要求用文件形式保存,并可以对其进行输入、浏览、查询、修改、删除等基本操作;
学生成绩的显式要求有一定的规范格式;
对学生成绩应能够分别按姓名和学号两种方式进行,要求能返回所有符合条件的学生的成绩;
对学生成绩的修改应逐个地进行,一个学生成绩的更改不应影响其他的学生记录;
所设计的系统应以菜单方式工作,应为用户提供清晰的使用提示,依据用户的选择来进行各种处理,并要求在此过程中能够尽可能的兼容用户使用过程中的异常情况。
总体设计。编写目的:
根据需求分析文档,初步提出问题的解决方案,以及软件系统的体系结构和数据结构的设计方案并写出书面文档总体设计说明书,为下一步进行详细设计做准备。
总体设计:1. 该系统可以按功能进行模块划分,其模块图如下:
系统模块图。
其中:成绩输入模块完成学生成绩的输入功能,输入成绩包括学号,姓名,年龄,性别,出生年月,地址,**,e-mail等;成绩浏览模块完成已录入学生成绩的显示;
成绩查询模块完成学生成绩的查询,查询时对应有按姓名查询和按学号查询两种方式;
成绩修改模块完成学生成绩的修改功能;
成绩删除模块完成学生成绩的删除功能;
菜单选择模块完成用户命令的接收,此模块也是学生成绩管理系统的入口,用户所要进行的各种操作均需在此模块中进行选择并进而调用其他模块实现相应的功能;
2. 数据结构。
本系统中主要的数据结构就是学生的成绩,学生成绩包括:学号,姓名,语文,数学,英语,总分;在处理过程中各项可以作为一个学生的不同属性来进行处理。
3.程序流程。
系统的执行应从功能菜单的选择开始,依据用户的选择来进行后续的处理,直到用户选择退出系统为止,其间应对用户的选择做出判断及异常处理。系统的流程图如下:
程序流程图。
详细设计。编写目的:
根据项目概要设计说明书,在项目概要设计的基础之上,对系统进行详细设计,以便下一步进行程序编码工作。
详细设计:对应于总体设计时的系统功能模块图,各个功能模块的处理逻辑如下:
1 ① 成绩输入模块:
打开学生成绩文件;
while ( 继续输入 )
读入学生成绩;
将读入成绩添加到学生成绩文件中;
提示是否继续输入;
关闭学生成绩文件;
2 ② 成绩浏览模块:
打开学生成绩文件;
while ( 不到文件结束 )
从文件中顺序读出一个学生的成绩;
按指定格式输出该学生的成绩;
关闭学生成绩文件;
3 ③ 成绩查询模块:
while ( 仍继续查询 )
if( 按姓名查询 )
读入查询的学生姓名;
打开学生成绩文件;
while( 不到文件结束 )
姓名 :enum name;
日期 :struct date
int year;
int month;
int day;
学生成绩:struct info
char num[5学生号 */
char name[8姓名 */
enum sex sex性别 */
struct date birthday出生年月*/
enum adderss地址 */
char phone[8** */
具体程序。#include
#include
#include
#include
#include <>
#include <>
#include
#include <>
#include
#include <>
using namespace std;
struct student
char name[10]; 姓名。
char id[10]; 学号。
float ynum; /语文分数。
float snum; /数学分数。
float enum; /英语分数。
float number; /总分。
student *next;
定义类。class stud
student *p1,*p2,*head;
public:
~stud析构函数。
while(head)
p1=head->next;
delete head;
head=p1;
成员函数。void output(student *head); 输出学生成绩。
student * input(student *head); 增加学生记录。
student* del(student *head, char*p); 删除记录。
student* find(student *head,char *p,int &n); 查找学生记录(可查找多个同名数据)
student* stat(student *head); 排序统计学生总分。
friend void total(student*head); 统计学生总分。
student* insert(student *head); 按学生总分插入记录。
student* clear(student *head); 删除当前表。
void inputs(student *p); 用于添加数据的子函数。
用于添加数据的子函数。
void stud::inputs(student*p)
cout<<
cin >>p->ynum;
while(
cin>>p->snum;
while(
cin>>p->enum;
while(
{ cerr<<"您的输入有误,请重新输入"<
课程设计 学生成绩管理系统
应用程序综合设计报告。题目 学生成绩管理系统 学生成绩管理系统是学生管理系统的重要组成部分,对学生的德 智 体全面评估有很大的作用,所以学生成绩管理系统应该能够为用户提供方便的查询平台和数据存储功能。传统是使用人工的方式对学生的信息进行存储,对于个人的学生成绩来说,数据的整理和分析就显得很麻烦,不利...
学生成绩管理系统课程设计
一。选题 2 1.1 学生成绩管理系统分析与设计 2 1.2选择该课题原因 3 1.3课题研究的目的和意义 3 1.4课题主要研究内容 3 二。系统规划 3 2.1 需求分析 3 2.2可行性分析 4 2.3课题要达到的目标 5 三。系统分析 5 3.1 系统现状分析 6 3.2 研究的思路和方法 ...
学生成绩管理系统课程设计
course数据表,结构如下 score情况数据表,结构如下 三概念模型设计。由需求分析的结果可知,本系统设计的实体包括 1 学生基本信息 学号,姓名,性别,地址,年龄,专业。2 课程基本信息 课程名,课程号,分数,学时,学分。这些实体间的联系包括 1 每位学生可以学习多门课程,每门课程可供多位学生...