文档库 最新最全的文档下载
当前位置:文档库 › 学生成绩管理系统

学生成绩管理系统

学生成绩管理系统
学生成绩管理系统

1 问题描述

学生成绩管理系统

学生成绩管理系统

学生信息包括学期、学号、班级、姓名,和语文、数学、英语、计算机四门课成绩。并按班级、学期查询学生成绩,并能录入、修改,求学生平均成绩和总成绩,输出不及格科目,按班级输出成绩单,按班级对学生成绩进行排序。

2 系统分析

2.1 题目要求

学生成绩管理系统设计

学生成绩信息包括:学期,学号,班别,姓名,四门课程成绩(语文、数学、英语和计算机)。

主要功能:

(1)能按学期、按班级完成对学生成绩的录入、修改

(2)能按班级统计学生的成绩,求学生的总分及平均分,设计并输出统计报表

(3)能查询学生成绩,不及格科目及学生名单

(4)能按班级输出学生的成绩单

(5)能按班级,按课程,对学生成绩进行排序。

要求:使用二进制文件方式存储数据,系统以菜单方式工作

2.2算法设计

(1)创建主菜单

(2)实现学生成绩信息录入

(3)实现学生成绩信息修改

(4)实现学生成绩信息查询

(a)按学期、班级查询学生的成绩

(b)按学号查询学生的成绩

(c)查询不及格的科目和学生名单

(5)实现学生成绩成绩统计

(a)按班级统计学生的总分、平均分

(b)按班级、课程对学生的总分进行排序

(6)实现学生成绩信息浏览

2.3流程图

2.4关键问题

难点:指针p、函数。

解决:head=NULL无条件循环指针p指向新开辟的单元

指针p是否为空

是否

输入学号p->num

输出p->num是否为@

内存是否

溢出输入姓名p->name

停止for(i=0;i<3;i++)

输入输入成绩

返回p->sum=s;

菜单 p->average=(float)s/3;

主函数: int main()

新建函数:infor *init()

输入函数:infor *creat()

显示函数: struct infor *view(struct infor *head)

删除函数: infor *delete(infor *head)

按名字寻找函数: void lookup(infor *head)

保存函数: void save(infor *head)

按总分排序函数: infor *sort(infor *head)

计算总分和均分函数: void zong(struct infor *head) 修改函:void change(struct infor *head)

按学号排序函数: infor *index(infor *h)

3 系统实现

3.1 题目一

(源代码)

#include

#include

#include

#define N 4

struct infor

{

int term; // 定义学期(1或2) int no; //学号

int clas; //定义班级(1或2班)

char name[9]; //姓名

float chinese; //定义四门成绩

float english;

float math;

float computer;

struct infor *link;

};

int n=0 ;

//***************************************************************************** *

//函数功能:创建链表,录入学生的相关信息,此函数返回一个指向链表头的指针

//***************************************************************************** *

struct infor *creat()

{

struct infor *head=NULL,*p=NULL,*q=NULL;

char c;

fflush(stdin);

printf("是否要输入信息(y/n):");

scanf("%c",&c);

p=q=(struct infor *)malloc(sizeof(struct infor));

q=head;

while(p!=NULL&&c=='y')

{

n++;

p=(struct infor *)malloc(sizeof(struct infor));

printf("请输入要录入学生信息的学期:");

fflush(stdin);

scanf("%d",&p->term); //学期只能为1或2

while(p->term!=1&&p->term!=2)

{

getchar();

printf("输入错误!请重新输入:"); //若学期不为1或2,则输入有误

scanf("%d",&p->term);

}

printf("请输入要录入学生成绩信息的班级:");

fflush(stdin); //班级只能为1或2

scanf("%d",&p->clas);

while(p->clas!=1&&p->clas!=2)

{

getchar();

printf("输入错误!请重新输入:");

scanf("%d",&p->clas);

}

printf("请输入该班的学生信息!\n"); //输入学生信息(包括学号、四门成绩)

printf("请输入学生学号:");

fflush(stdin);

scanf("%d",&p->no);

printf("请输入学生姓名:");

fflush(stdin);

scanf("%s",p->name); //输入学生姓名

printf("请输入语文成绩(0-100):"); //输入四门成绩scanf("%f",&p->chinese);

printf("请输入数学成绩(0-100):");

scanf("%f",&p->math);

printf("请输入英语成绩(0-100):");

scanf("%f",&p->english);

printf("请输入计算机成绩(0-100):");

scanf("%f",&p->computer);

if(n==1) //创建新结点head=p;

else

q->link=p;

q=p;

printf("是否还要输入信息(y/n):");

fflush(stdin);

scanf("%c",&c);

}

q->link=NULL; //链表结尾

return(head); //链表返回头指针

}

//***************************************************************************** *

//函数功能:实现对学生信息的修改

//***************************************************************************** *

void change(struct infor *head)

{

struct infor *p=head;

char ch,m;

char name[9]; //定义一个数组,存储学生的姓名

int num;

if(p==NULL)printf("出错!请先输入学生信息!");

while(1) //设置循环控制

{

printf("\t\t\t请选择要修改的信息!\t\n");

printf("\t\t\t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"); // 输出要修改的信息

printf("\t\t\t a、学号: \n");

printf("\t\t\t b、姓名: \n");

printf("\t\t\t c、班级: \n");

printf("\t\t\t d、成绩: \n");

printf("\t\t\t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");

fflush(stdin); //清盘

scanf("%c",&ch);

if(ch=='a')

{

printf("你要修改的信息是:学号!\n"); //按姓名修改学号

printf("请输入你要修改的学生姓名:");

scanf("%s",name);

if (strcmp(name,p->name)==0)

{

printf("请输入该学生新的学号:"); //输入新学号

scanf("%d",&p->no);

}

else printf("无法查找到该学生!\n"); //找不到信息

}

else if(ch=='b') //按学号修改该班级学生的信息

{

printf("你要修改的信息是:姓名!\n");

printf("请输入你要修改的学生的学号:");

scanf("%d",&num);

if(num==p->no) //输入学号,判断条件

{

printf("请输入该学生的姓名:");

scanf("%s",p->name); //输入要做修改的学生姓名

}

else printf("无法查找到该学生!\n"); //找不到信息

}

else if(ch=='c')

{

printf("你要修改的信息是:班级!\n"); //按学号修改班级

printf("请输入你要修改的学生的学号:");

scanf("%d",&num);

if(num==p->no)

{

printf("请输入该学生的班级:"); //输入要做修改的班级

scanf("%d",p->clas);

}

else printf("无法查找到该学生!\n"); //找不到信息

}

else if(ch=='d')

{

printf("你要修改的信息是:成绩!\n"); //按学号修改成绩

printf("请输入你要修改的学生的学号:");

scanf("%d",&num);

if(num==p->no) //输入学号{

printf("请输入该学生新的语文成绩:");

scanf("%f",p->chinese);

printf("请输入该学生新的数学成绩:");

scanf("%f",p->math); //输入新的四门成绩

printf("请输入该学生新的英语成绩:");

scanf("%f",p->english);

printf("请输入该学生新的计算机成绩:");

scanf("%f",p->computer);

}

else printf("无法查找该学生的信息!\n"); //找不到信息

}

else printf("出错!\n");

p=p->link;

printf("是否还要继续修改信息(y/n):"); //判断,是否还要修改信息,跳出循环

fflush(stdin);

if((m=getchar())=='n')break;

}

}

//***************************************************************************** *

//函数功能:按照学号查询学生信息

//***************************************************************************** *

void checkno(struct infor *head)

{ //按学号查询学生的成绩

struct infor *p;

p=head;

int num,i=0;

printf("请输入你要查询的学生学号:\n");

scanf("%d",&num);

if(num==p->no) //输入学号,判断条件

{

printf("--------------------------------------------------------------------------");

printf("\t学期\t学号\t班别\t姓名\t语文\t数学\t英语\t计算机\t\n");

printf("-------------------------------------------------------------------------\n");

printf("%d\t",p->term);

printf("%d\t",p->no);

printf("%d\t",p->clas); //输出学生的班级

printf("%s\t",p->name);

printf("%1f\t",p->chinese); //输出四门成绩

printf("%1f\t",p->math);

printf("%1f\t",p->english);

printf("%1f\t",p->computer);

i=2;

}

if(i==0)

printf("没找到该学生的信息!"); //找不到信息

}

void checkclass(struct infor *head)

{

int banji,i=0;

struct infor *p=head;

while(p!=NULL) //按班级查询学生的成绩

{

printf("请输入你要查询成绩的班级:");

scanf("%d",&banji);

if(banji==p->clas)

{

printf("请输出%d班所有同学的成绩:",banji);

printf("--------------------------------------------------------------------------");

printf("\t学期\t学号\t班别\t姓名\t语文\t数学\t英语\t计算机\t\n");

printf("-------------------------------------------------------------------------\n");

printf("%d\t",p->term); //输出要查询成绩的班级

printf("%d\t",p->no); //输出查询成绩的学生学号

printf("%d\t",p->clas); //输出要查询成绩的班级

printf("%s\t",p->name); //输出要查询成绩的学生姓名

printf("%1f\t",p->chinese);

printf("%1f\t",p->math); //输出四门成绩

printf("%1f\t",p->english);

printf("%1f\t",p->computer);

printf("\n");

i=2;

}

p=p->link;

if(i==0)

printf("没找到学生信息!"); //输出错误,找不到信息

}

}

void checkterm(struct infor *head) //定义按学期查找信息的函数

{

int xueqi,i=0;

struct infor *p=head;

while(p!=NULL) //设置循环控制

{

//按学期查询学生的成绩

printf("请输入你要查询成绩的学期:");

scanf("%d",&xueqi);

if(xueqi==p->term)

{

printf("请输出第%d学期所有班级的信息:");

printf("--------------------------------------------------------------------------");

printf("\t学期\t学号\t班别\t姓名\t语文\t数学\t英语\t计算机\t\n");

printf("-------------------------------------------------------------------------\n");

printf("%d\t",p->term);

printf("%d\t",p->no);

printf("%d\t",p->clas);

printf("%s\t",p->name); //输出姓名

printf("%1f\t",p->chinese);

printf("%1f\t",p->math);

printf("%1f\t",p->english); //输出四门成绩

printf("%1f\t",p->computer);

printf("\n");

i=2;

}

p=p->link;

if(i==0)

printf("没找到学生信息!"); //找不到信息

}

}

void norich(struct infor *head) //定义一个函数,查找不及格的学生

{

struct infor *p;

p=head;

int num,i=0;

float toa;

printf("请输入要查询成绩的学生学号:");

scanf("%d",&num);

if(num==p->no)

{

printf("正在查询该学生的成绩,请稍侯>>>>>\n"); //查询学生的成绩,输出不及格的科目

while(p!=NULL)

{

if(p->chinese<60)

{

printf("该学生的语文不及格!\n");

printf("\n");

i++;

}

if(p->math<60) //输出该学生的不及格科目

{

printf("该学生的数学不及格!\n");

printf("\n");

i++;

}

if(p->english<60)

{

printf("该学生的英语不及格!\n"); //对各门成绩进行判断

printf("\n");

printf("\n");

i++;

}

if(p->computer<60)

{

printf("该学生的计算机不及格!\n");

printf("\n");

i++;

}

if(i>0)

printf("%s同学共有%d门成绩不及格!\n学号是:%d\n",p->name,i,p->no);

printf("\n");

toa=p->chinese+p->math+p->english+p->computer;

if(toa<240)

printf("不及格学生名单为:%s ",p->name); //输出不及格的学生名单

p=p->link;

}

}

}

void search(struct infor *head) //定义一个查询学生信息的函数,调用各子函数,进行查询

{

char k,ch;

struct infor *p=head;

while(p!=NULL) //设置循环控制条件

{ //输出查询方式 printf("\t\t\t 你要选择何种方式查询成绩!\n");

printf("\t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");

printf("\t\t\t a、学号: \n");

printf("\t\t\t b、班级: \n");

printf("\t\t\t c、学期: \n");

printf("\t\t\t d、不及格的学生: \n");

printf("\t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");

fflush(stdin);

scanf("%c",&k);

switch(k)

{

case 'a':checkno(head);break; //调用学号函数case 'b':checkclass(head);break;

case 'c':checkterm(head);break;

case 'd':norich(head);break;

}

printf("\n");

printf("是否还要继续查询学生的信息(y/n):");

fflush(stdin);

if((ch=getchar())=='n')break; //跳出循环,返回主菜单

}

}

//***************************************************************************** *

//函数功能:对学生成绩进行统计,按班级求总分及平均分

//***************************************************************************** *

void zong(struct infor *head) //对该班级的学生成绩求总分、平均分

{

float toa=0,ave=0;

int i=0;

struct infor *p=head;

while(p!=NULL)

{

toa=p->chinese+p->math+p->english+p->computer; //输出学生的总分和平均分成绩

ave=toa/N;

printf("第%d个学生的总分为:%1f!\n",i+1,toa);

printf("\n");

printf("第%d个学生的平均分:%1f!\n",i+1,ave);

printf("\n");

printf("已经统计了第%d个学生的成绩!\n",i+1); //统计完毕

printf("\n");

i++;

p=p->link; //指向下一个结点

}

}

void paixu(struct infor *head) //对该班级的学生成绩进行排序{

int i=0,j;

float a[10],t; //把结点信息输入到数组,然后排序struct infor *p=head;

while(p!=NULL)

{

a[i]=p->chinese+p->math+p->computer+p->english;

i++;

p=p->link;

}

for(j=0;j<4;j++) //用数组排序

for(i=0;i<3-j;i++)

if(a[i]

{

t=a[i];

a[i]=a[i+1];

a[i+1]=t;

i++;

}

for(i=0;i<4;i++) //输出排序后的总分

printf("%f ",a[i]);

}

void deal(struct infor * head) //按学号和班级对学生成绩进行统计{

struct infor *p;

p=head;

int clas;

char ch1,ch2;

printf("请输入要统计成绩的班级(1或2):"); //输入要统计成绩的班级

scanf("%d",&clas);

printf("正在统计该班级学生的总分,请稍侯!!!\n");

while(1) //设置循环控制条件{

zong(p); //调用总分函数

printf("是否还要继续统计其他学生的成绩(y/n):");

fflush(stdin);

if((ch1=getchar())=='n')break;

}

printf("是否要对该班的学生成绩进行排序(y/n):");

fflush(stdin); //清盘

if((ch2=getchar()!='n'))

{printf("正在对该班学生的总分进行排序,请稍侯!!!\n");

paixu(p); //调用排序函数printf("\n");}

}

//***************************************************************************** *

//函数功能:信息浏览,查看库中全部记录

//***************************************************************************** *

struct infor *view(struct infor *head)

{

struct infor *p;

p=head;

printf("-------------------------------------------------------------------------\n");

printf("学期\t学号\t班别\t姓名\t语文\t数学\t英语\t计算机\t\n");

printf("-------------------------------------------------------------------------\n");

while(p!=NULL)

{

printf("%d\t",p->term); //查询学期

printf("%d\t",p->no); //查询学号

printf("%d\t",p->clas); //查询姓名

printf("%s\t",p->name);

printf("%f\t",p->chinese); //查询四门成绩

printf("%1f\t",p->math);

printf("%1f\t",p->english);

printf("%1f\t",p->computer);

p=p->link;

printf("\n");

printf("-------------------------------------------------------------------------\n");

}

return(head);

}

//***************************************************************************** *

//将信息存入磁盘文件e:\xys.txt,该文件是一个文本文件

//***************************************************************************** *

void save(struct infor *head)

{

FILE *fp; //定义文件指针

struct infor *p=head;

fp=fopen("d:\\xys.txt","w+");

while(p!=NULL)

{

fwrite(p,sizeof(struct infor),1,fp);

p=p->link;

}

fclose(fp); //关闭磁盘文件printf("数据存盘成功!\n");

}

//***************************************************************************** *

//***************************************************************************** *

void main()

{

struct infor *head;

int sel;

do //创建菜单

{

printf("\t\t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");

printf("\t\t 学生成绩信息管理系统\n");

printf("\t\t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");

printf("\t\t\t1 信息导入\n");

printf("\t\t\t2 信息修改\n");

printf("\t\t\t3 信息查询\n");

printf("\t\t\t4 信息浏览\n");

printf("\t\t\t5 统计成绩\n");

printf("\t\t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");

printf("\t\t\t6 数据存盘\n");

printf("\t\t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");

printf("\t\t\t0 退出系统\n");

printf("\t\t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");

printf("请选择:");

scanf("%d",&sel);

switch(sel)

{

case 1:head=creat();break; //调用函数

case 2:change(head);break;

case 3:search(head);break;

case 4:view(head);break;

case 5:deal(head);break;

case 6:save(head);break;

case 8:printf("\n\n\t\t\t\t^-^,再见!\n\n\n");break;

}

}while(sel!=0);

}

4系统测试

4.1如何设计测试数据

先输入学期、班级,再输入学生信息(学号、语文、数学、英语、

计算机成绩(限定在100以内));再查询成绩可以按学号、班级、学期查询;同样修改可以按学号、班级、学期修改

4.2 系统测试过程

(1)测试数据1及测试结果

4 系统测试

4.1如何设计测试数据

先输入学生班级、学期,再输入学生信息(学号、姓名、语文、数学、计算机成绩(限定在100分以内));可以按学期、班级、学号查询成绩;同样也可以按学期、班级、学号修改成绩;能求总分和平均分。

4.2系统测试过程

(1)测试数据1及测试结果

登陆界面:

学生信息管理系统可行性分析报告

学生信息管理系统可行性分析报告 一.引言 1.编写目的 随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。面对庞大的信息量,就需要有学生信息管理系统来提高学生管理工作的效率。通过这样的系统,可以做到信息的规范管理、科学统计和快速的查询,从而减少管理方面的工作量。 2.项目背景 该项目开发的软件为学校学生信息管理系统软件,是鉴于目前学校学生人数剧增,学生信息呈爆炸性增长的前提下,学校对学生信息管理的自动化与准确化的要求日益强烈的背景下构思出来的,该软件设计完成后可用于所有教育单位(包括学校,学院等等)的学生信息的管理.目前社会上信息管理系统发展飞快,各个企事业单位都引入了信息管理软件来管理自己日益增长的各种信息,学生管理系统也是有了很大的发展,商业化的学生信息管理软件也不少.但本系统完全独立开发,力求使系统功能简洁明了,但功能齐全且易于操作. 3.定义 学籍管理系统:学籍管理是帮助教学人员、行政人员对人事档案的管理软件。使用汉语编程语言,独立完成其功能。 MIS:管理信息系统;DFD图:数据流图(描述逻辑模型的图形工具,表示数据在系统内的变化。);CFD:流程控制图;

4.参考资料 [1].<软件工程概论> 李存珠李宣东编著南京大学计算机系出版2001年8月 [2]数据库系统原理教程,王删著.清华大学出版社,2002.1 [3]现代软件工程,陈松桥等著.北方交通大学出版社,2002,1 二.可行性研究的前提 1.原因 由于现今的学籍管理非常繁琐,行政人员付出大量的工作时间,得到的效率很低。因此为提高工作效率,减轻校方人员的工作负担,决定开发学籍管理系统软件。 2.系统目标 学籍管理信息系统以计算机为工具,通过对教务管理所需的信息管理,把管理人员从繁琐的数据计算处理中解脱出来,使其有更多的精力从事教务管理政策的研究实施,教学计划的制定执行和教学质量的监督检查,从而全面提高教学质量。 3.条件、假定和限制 开发该系统的主要资金来源为用户提供的开发资金投入,故在设计开发中最大不能超过该限度,且软件完成交付用户使用后,应保证软件的运行寿命至少达到用户的要求范围.且软件开发时间应基本控制在用户提出的要求范围内. 4.决定可行性的主要因素: (1)技术可行;

学生成绩管理系统详细操作过程

学生成绩管理系统 我将把我的实现步骤完整的写出来,我是在VC 6.0版本下用MFC实现的。 我创建的基于单文档的应用程序,过程不介绍,大家都会。下面的是我系统菜单: 思路: 刚进入系统时,只有“登录”菜单可用,其他三个菜单项都是灰色不可用的。当用户点“进入系统”菜单项时,用户输入用户名、密码和用户类型,系统将根据相应的用户权限使相应的菜单可用,并且“进入系统”菜单项变为不可用。如:如果用户类型是学生,那么只有学生权限菜单可用,而“教师权限”和“管理员权限”都不可用,同时“进入系统”变为不可用。 “学生权限”下只有“查询成绩”,因为学生只可以查询自己相应的成绩;“教师权限”下有“查询学生成绩”和“增改删学生成绩”两个菜单项,因为教师除了可以查询学生成绩还可以增加、修改和删除学生成绩;“管理员权限”下有“管理学生”和“管理教师”两个菜单项。 整体设计: 因为我们要设置系统菜单的状态,所以必须在CMainFrame中添加相应的函数和代码,具体步骤如下: 【步骤1】由于系统要使用ODBC类操作数据库,所以需要在stdafx.h中加入代码: #include 【步骤2】在CMainFrame中的OnCreat()中添加代码如下,实现菜单的初始化工作,当用户没进入系统之前,只有“登陆”菜单下的“进入系统”菜单项可用,而“退出系统”和其他3个权限菜单都不可用,即都是灰色的。 int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) { //使“退出系统”和其他3个权限菜单都不可用,即都是灰色的 GetMenu()->GetSubMenu(0)-> EnableMenuItem(1,MF_BYPOSITION | MF_DISABLED | MF_GRAYED); GetMenu()-> EnableMenuItem(1,MF_BYPOSITION | MF_DISABLED | MF_GRAYED); GetMenu()-> EnableMenuItem(2,MF_BYPOSITION | MF_DISABLED | MF_GRAYED); GetMenu()-> EnableMenuItem(3,MF_BYPOSITION | MF_DISABLED | MF_GRAYED); } 【步骤3】在CMainFrame中添加自己定义的函数void SetMenuSta(int type),此函数在登陆对话框的OnOK()中被调用,即当用户进入系统后使“进入系统”

数据库课设学生成绩管理系统开发文档

学生成绩管理系统 背景简介 学生成绩的手工录入与查询,是一项非常繁重而枯燥的劳动,耗费许多人才和物力,而且会因人的情绪烦躁而出现失误,因此在计算机飞速发展的今天,应用数据库技术实现学生成绩的计算机管理是可行而必要的工作。本课题旨在对学生成绩实现计算机管理,提高工作效率,提高管理水平。 2 系统目标 当前,应用数据库技术编写信息管理软件,已是很成熟的技术,关键是如何实现设计要求,如何设计出友好的人机界面,使程序运行稳定、使用方便、操作简便,建立学生成绩管理系统,采用计算机对学生成绩进行管理,进一步提高办学效益和现代化水平。本系统的设计与实现需要达到如下要求: 1. 原始数据录入(包括学生信息、课程信息和学生成绩的录入); 2. 课程查询?学生信息和成绩查询查询; 3. 报表输出(包括学生成绩汇总报表、需重修的学生统计表、班级单科成绩表等); 4. 数据维护(包括数据备份、数据恢复等)。 5. 随着网络技术的发展,可考虑提供网络在线查询功能。 3 功能要求 针对上述系统实现目标,学生成绩管理系统至少需要包括以下功能: 1. 基本信息的管理系统,基本功能如下: (1)能够完成新、老生信息的输入、修改、删除等工作,学生的基本信息,包括学号、姓名、性别、籍贯等,具体可根据需求自行设计; (2)能够完成课程信息的输入、修改、删除等工作,课程的基本信息,包括课程编号、课程名称、学时、学分、先修课等,具体可根据需求自行设计; (3)可以按照特定的信息进行查找,并按照特定的要求进行排序; (4)可以对学生及课程的基本信息进行打印输出; 2. 学生成绩的管理,基本功能如下: (1)学生成绩的输入、修改、删除等基本操作; (2)成绩的查询功能,可以按学号、姓名等进行成绩查询; (3)成绩的综合统计功能,包括学生成绩按照不同条件进行排名,管理人员可以选择

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

《学生成绩管理系统》 设计报告

摘要 本数据库的主要功能如下: 学生信息设置,该模块包括数据的添加、修改、删除、查询,数据库后台SQL Sever 2000和前台Delphi都可实现这些功能;院系信息设置,该模块包括数据的添加、修改、删除、查询,数据库后台SQL Sever 2000和前台Delphi都可实现这些功能;课程信息设置,该模块包括数据的添加、修改、删除、查询,数据库后台SQL Sever 2000和前台Delphi 都可实现这些功能;学生成绩查询,该模块包括学生各门课程成绩的查询,因为该模块是利用数据库视图,所以不能对数据进行修改、添加及删除。 关键字:教学管理数据库SQL Sever 2000 Delphi 表查询修改添加删除

第一章绪论 1.1数据库技术的现状 数据库技术是计算机科学技术的一个重要分支。从20世纪50年代中期开始,计算机应用从科学研究部门扩展到企业管理及政府行政部门,人们对数据处理的要求也越来越高。1968年,世界上诞生了第一个商品化的信息管理系统IMS(Information Management System),从此,数据库技术得到了迅猛发展。在互联网日益被人们接受的今天,Internet又使数据库技术、知识、技能的重要性得到了充分的放大。现在数据库已经成为信息管理、办公自动化、计算机辅助设计等应用的主要软件工具之一,帮助人们处理各种各样的信息数据。 在这30多年的历程中,人们在数据库技术的理论研究和系统开发上都取得了辉煌的成就,而且已经开始对新一代数据库系统的深入研究。数据库系统已经成为现代计算机系统的重要组成部分。 1.2、学生成绩管理系统开发的目的与意义 1.掌握数据库设计的基本技术,熟悉数据库设计的每个步骤中的任务和实施方案,并加深对数据库系统系统概念和特点的理解。 2.初步掌握数据库应用系统分析、设计和实现方法。 3.进一步提高学生的知识综合运用能力。 4.为学习更高深的计算机技术打下基础。提高其综合素质,便于未来就业以及更深发展。 第二章系统需求分析 2.1 概述 1.信息需求 高校学生的成绩管理工作量大、繁杂,人工处理非常困难。学生成绩管理系统借助于计算机强大的处理能力,大大减轻了管理人员的工作量,并提高了处理的准确性。学生成绩管理系统的开发运用,实现了学生成绩管理的自动化,不仅能使管理者从

学生成绩管理信息系统1

1 学生成绩管理信息系统 学生成绩管理系统 一.系统分析

1.现状分析 随着计算机应用的普及和迅雷般的飞速发展,信息化必然成为世界发展的潮流和趋势。信息化正在以前所未有的速度影响着人类 的方方面面,同时对传统教育的改革也起到了推动作用。 在今天的中国,信息化迅速发展,信息化必然走进校园。在学校众多管理工作中,学生的成绩管理原来越重要。然而传统的工作方

式如手工修改和查询成绩是一项非常繁重 而枯燥的工作,经常耗费很大财力和人力。数据量大时,将不可避免的出现失误。因此,学生成绩管理工作的信息化是十分必要的。学生成绩管理系统是利用现代的信息技术,实现学生信息资源的共享,实现学生信息与社会其他信息的有机联系,促进学生成绩管理工作的科学化、现代化,提高学生管理工作的效率。 2.系统需求分析 通过调查,要求系统具有以下功能: 1) 任课教师可以录入所教课程的成绩 2) 成绩的上传和下载 3) 教务处即系导员能够统计成绩

4) 成绩的发布和查询 5) 用户权限的限定 3系统的可行性分析 1)技术可行性分析 该系统选择微软公司的Visual Basic 6.0作为系统开发工具,主要是因为它是一个快速可视化程序开发工具软件且功能强大,主要表现为:所见即所得的界

面设计,尤其是数据窗口能方便而间接操纵数据库的智能化对象,基于对象的设计方法,极短的软件开发周期,较易的代码维护,同时还有众多的Active控制,提高了软件的使用效率。 连接采用SQL Server数据库,SQL Server是一种关系数据库工具,关系数据库已开发的最通用的数据库之一。该数据库能汇集各种信息以供查询、存储和检索。它是一种使用广泛的数据库管理系统,具有许多优点:易用性、适合分布组织科伸缩性、用于决策支持的数据库功能等。. 2)经济可行性分析 从经济角度分析,学生成绩系统所耗费的资源非常的少。目前,计算机越来越普及,大部分

学生成绩管理系统数据流图.doc

.3.3.1 创建实体关系图 (1)在需求收集的过程中,要求客户列出应用软件或业务过程涉及到的"事物",将其演化成数据对象; (2)一次考虑一个对象,分析员和客户定义这个对象和其他对象之间是否存在连接; (3)如果存在连接,应创建一个或多个关系; (4)对每一个关系,确定其关联类型; (5)重复步骤(2)到步骤(4),直到定义了所有关系。 (6)定义每个实体的属性; (7)形式化并复审实体关系图; (8)重复步骤(1)到(7),直到数据建模完成。 举例分析: * 实体:学生、课程、成绩。 * 实体属性定义: 学生:学号、姓名、性别、出生日期、入学年月 课程:课程编号、课程名称、课程学分、课程描述 成绩:学号、课程编号、分数、考核日期 * 实体关系图: 首先分析"学生成绩管理系统"的用户要求,找出该系统应该包括的实体。显然,学生、课程和成绩都是系统的实体,并且可以初步定义它们的属性(见上)。教务人员虽然是系统的用户,但其信息与系统处理无关,因此不用作为实体。那么,学生的选课信息是否需要成为实体呢?由于成绩信息包含了选课信息,因此选课信息不用单独记录。最终,确定系统的实体是学生、课程和成绩。 接着,我们分析这些实体之间的关联关系。从实际情况得知,一个学生可以选多门课程,一门课程也可以有多个学生选修,但每个学生选一门课程必须有一个成绩。根据上述分析,我们得到如图所示的实体关系图。 3.3.3.2 创建数据流模型 通常,数据流图是分层绘制的,整个过程反映了自顶向下进行功能分解和细化的分析过程。顶层(也称第0层)DFD用于表示系统的开发范围,以及该系统与周围环境的数据交换关系;最底层DFD代表了那些不可进一步分解的"原子加工";中间层DFD是对上一层父图的细化,其中的每一个加工可以继续细化,中间层次的多少由系统的复杂程度决定。 (1)第0层DFD将整个系统表示成一个加工; (2)确定并标记主要的输入和输出; (3)分离出下一层中的加工、数据对象和存储,并对其进行细化,一次细化一个加工; (4)标记所有加工和箭头; (5)重复步骤(3)和(4),直到所有的加工只执行一个简单的操作,可以很容易地用程序实现。举例分析: * 第0层DFD图

学生成绩管理信息系统

学生成绩管理系统 一.系统分析 1.现状分析 随着计算机应用的普及和迅雷般的飞速发展,信息化必然成为世界发展的潮流和趋势。信息化正在以前所未有的速度影响着人类的方方面面,同时对传统教育的改革也起到了推动作用。 在今天的中国,信息化迅速发展,信息化必然走进校园。在学校众多管理工作中,学生的成绩管理原来越重要。然而传统的工作方式如手工修改和查询成绩是一项非常繁重而枯燥的工作,经常耗费很大财力和人力。数据量大时,将不可避免的出现失误。因此,学生成绩管理工作的信息化是十分必要的。学生成绩管理系统是利用现代的信息技术,实现学生信息资源的共享,实现学生信息与社会其他信息的有机联系,促进学生成绩管理工作的科学化、现代化,提高学生管理工作的效率。 2.系统需求分析 通过调查,要求系统具有以下功能: 1) 任课教师可以录入所教课程的成绩 2) 成绩的上传和下载 3) 教务处即系导员能够统计成绩 4) 成绩的发布和查询 5) 用户权限的限定 3系统的可行性分析 1)技术可行性分析 该系统选择微软公司的Visual Basic 作为系统开发工具,主要是因为它是一个快速可视化程序开发工具软件且功能强大,主要表现为:所见即所得的界面设计,尤其是数据窗口能方便而间接操纵数据库的智能化对象,基于对象的设计方法,极短的软件开发周期,较易的代码维护,同时还有众多的Active控制,提高了软件的使用效率。 连接采用SQL Server数据库,SQL Server是一种关系数据库工具,关系数据库已开发的最通用的数据库之一。该数据库能汇集各种信息以供查询、存储和检索。它是一种使用广泛的数据库管理系统,具有许多优点:易用性、适合分布组织科伸缩性、用于决策支持的数据库功能等。 2)经济可行性分析 从经济角度分析,学生成绩系统所耗费的资源非常的少。目前,计算机越来越普及,大部分学校都配有计算机,它使用的软件工具Visual Basic 和SQL Server,学校的机房几乎都有安装,而且由于这个系统较小,涉及人员较少,开发费用小,易于维护并具有可靠的安全性,该系统在投入使用后可以节省大量的人力、物力和财力。 3)社会可行性分析 现代科学信息技术的应用越来越普及,促进了社会的高速发展,也将社会带入了一个新的数字时代。学生成绩管理系统采用科学的,有效的手段,对信息加以分析,通过建立一个有效的学生成绩管理系统是学校的各项活动能够提高工作效率,最终提高经济效益和社会效益的目的。 该软件易于操作,实现的功能丰富,大大减少了工作量以及偶那个做人员的数量,便于对学生进行有效的管理,提高了部门信息化水平,同时能够与社会同类院校数据处理相融合,使此系统在时间上具备了可行性。 综上分析可知,学生管理信息系统在技术、经济、社会上具有可行性。 4.业务流程图 业务流程图如下: ①用户登录部分的业务流程

基于Web的学生成绩管理系统的设计和实现

论文评定 指导教师意见: 指导教师:___________(签名) 年月日

原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论文不含任何其他个人或集体已经发表或撰写过的作品或成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本声明的法律结果由本人承担。 论文作者签名:*** 日期:2009 年10 月30 日

基于Web的学生成绩管理系统的设计和实现 摘要 进入21世纪后,科学技术突飞猛进,信息时代的来临不仅让计算机在科技上得到应用,更让计算机在生活上得到了更广泛的应用,对如今的学校来说,实现电子信息化的办公是必然趋势,学校中的信息量主要体现在学生成绩的管理上面,因此学生成绩管理系统是一个教育单位不可缺少的部分。 本毕业设计所描述的学生成绩管理系统是采用https://www.wendangku.net/doc/503982916.html,作为网络编程框架,SQL Server 2005作为数据库编写的一个B/S模式的系统。系统主要实现了:用户管理、成绩查询、成绩管理和科目管理等功能。本文详细介绍了学生成绩管理系统的需求分析、功能设计和系统设计,在系统设计中给出数据库的设计和本系统的总体设计方案,在系统实现中具体介绍了各个功能的所能实现的情况和主要代码,同时附有运行界面图。 关键字:成绩管理,成绩录入,成绩查询,.NET , B/S

STUDENTS’ PERFORMANNCE MANAGEMENT SYSTEM ABSTRACT After entering the 21st century, science and technology advance by leaps and bounds, the advent of the information age is not only make the computer is widely used in science and technology, more make the computer in life has been more widely, for now, the school of electronic information office is an inevitable trend, the school of information are mainly embodied in the management of students' grades above, education management system is a indispensable part of the unit. The graduation design of student achievement management system is described using https://www.wendangku.net/doc/503982916.html, is a network programming framework, SQL Server 2005 as a database of writing a B/s-based mode of the system. System is mainly realized: user management, scores query, performance management and management of subject etc. Function. This paper introduces the student performance management system requirements analysis, functional design and system design, system design in database design and the overall design scheme of the system, in the system are introduced in details of each function can realize the situation and the main operation interface with code. Key words:Grade Management,Achievements recorded scores query,.NET ,B/S

学生成绩管理系统需求分析报告

学生成绩管理系统需求分析报告 一、任务概述 1.1项目背景 在如今的高校日常管理当中,学生成绩管理是其中非常重要的一环。随着计算机和计算机知识的普及,学生成绩管理得到了更大的发展空间,通过开发学生成绩管理系统,使用计算机对学生成绩信息进行管理,具有手工管理所无法比拟的检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等优点,可以提高校务人员的工作效率和学生的查询效率。 1.2开发目的 采用学生成绩管理系统,可以提高校务人员的工作效率和学生的查询效率。 1.3可行性分析 目前,随着办公信息化的开展,高校的扩招,新生入学以及期末考试结束后,学校都需要对一些繁琐的流程进行管理,通过一个基于B/S架构的管理系统,可以很好的将这一个过程进行化繁为简。此项目具有普遍性,能够应用于很多学校。因此,该类型系统可以大量投入使用。 二、需求分析 2.1功能分析 学生成绩管理系统应该完成以下两个方面的内容:学生档案资料的管理、学生成绩的管理,每个内容均需要提供添加、修改和查询的功能。学生成绩管理系统设计到的用户包括系统管理员、教师、学生,各类用户的权限不一样。系统管

理员可以添加、修改、查询学生档案资料和学生的成绩;教师可以发布学生的成绩信息,而且只能查询自己所授课程的信息以及一些公共信息;学生只能查询自己的档案、成绩以及一些公共的信息。同时系统要有系统备份功能,系统出故障时,因该有相应的应急措施或者系统恢复功能。 2.2模块划分 系统设计主要包括五个主要功能模块:权限验证模块、用户管理模块、基础数据库管理模块、成绩管理模块和数据库管理模块。 (1)权限验证模块主要是根据用户输入的用户名和密码验证用户身份并且 决定其操作权限; (2)用户管理模块实现三个主要功能:添加新用户、修改用户口令和用户 权限、删除指定的用户; (3)基础数据管理模块:维护学生信息相关的一些基础数据,它主要包括 学校系别专业的设置、学生档案资料的管理; (4)成绩管理模块:提供学生考试成绩的管理,满足不同系统用户的管理 和查询需求; (5)数据库管理模块:对现有的数据库进行管理,包括数据备份和恢复, 以方便用户对数据库的管理和维护工作,提高系统的数据安全性。

学生成绩管理系统

程序设计课程设计报告 目录 一、课程设计题目及内容 二、程序中使用的数据及主要符号说明 三、带有详细注释的自己编写的源程序 四、程序运行时的效果图 五、实验结果分析,实验收获和体会。 1、实验结果分析: 2、实验收获和体会: 一、实验内容 实验1: (1)、设计一个学生类Student,包括数据成员:姓名、学号、二门课程(面向对象程序设计、高等数学)的成绩。 (2)、创建一个管理学生的类Management,包括实现学生的数据的增加、删除、修改、按课程成绩排序、保存学生数据到文件及加载文件中的数据等功能。 (3)、创建一个基于对话框的MFC应用程序,程序窗口的标题上有你姓名、学号和应用程序名称。使用(1)和(2)中的类,实现对学

生信息和成绩的输入和管理。 (4)、创建一个单文档的MFC应用程序,读取(3)中保存的文件中的学生成绩,分别用直方图和折线方式显示所有学生某课程的成绩分布图。 二、程序中使用的数据及主要符号说明 unsigned int mID;//学号 CString mName;//姓名 unsigned int mAge;//年龄 CString mAdd;//地址 float mCpp;//c++成绩 float mMath;//数学成绩

CListBox m_list;//列表名 afx_msg void OnClickedButtonAdd();//添加按钮afx_msg void OnClickedButtonDel();//删除按钮afx_msg void OnClickedButtonChange();//修改afx_msg void OnClickedButtonOk();//确定 afx_msg void OnClickedButtonCancle();//取消 afx_msg void OnSelchangeList1();//列表控件 virtual BOOL OnInitDialog();//初始化对话框 afx_msg void OnDestroy();//防止内存泄漏 afx_msg void OnClickedButton6(); int m_count;//记录人数 int mSex;//性别 三、带有详细注释的自己编写的源程序(1)、设计一个学生类Student //Student.h #pragma once #include //using namespace std; #include enum Sex { male, female }; class Student { public: Student();//构造函数 ~Student();//析构函数 unsigned int GetID()const { return m_num; } void SetID(unsigned int ID){ m_num = ID;}; std::string GetName()const { return m_name; }

学生成绩管理系统+流程图 (2)

学生成绩管理系统的可行性分析报告 一、系统简述 学生成绩管理系统是以计算机为工具,通过对教务管理所需的信息管理,把管理人员从繁琐的数据计算处理中解脱出来,为老师节省很多时间跟精力,提高老师的工作效率,通过学生成绩管理系统给学校管理者减轻工作的负担,将工作的失误几率降到最低,为广大老师同学带来便利,使大家能够更好的投入到学习中。同时这个系统还可以减少人力与管理费用,提供信息准确度更高,更简便的学生信息管理系统。 该系统的功能能够实现学生成绩信息的管理和查询;同时还可以对信息进行修改、删除和添加,另外该系统应该能做到可以对学生成绩信息以及成绩信息查询和修改的效率尽可能做到精确,同时各项功能的操作要简单,不需过多的对人员的培训。 而延边大学正推行学分制改革,进一步完善改进学生成绩管理系统很有必要。学生成绩管理系统是学校不可缺少的一个重要部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生成绩管理系统应该为用户提供充足的信息和快捷的查询手段。同时,学生成绩管理是各大学的主要日常管理工作之一,涉及到校、系、师、生的诸多方面,随着教学体制的不断改革,尤其是学分制、选课制的展开和深入,学生成绩日常管理工作及保存管理日趋繁重、复杂。推行学生成绩管理系统势在必行。 二、系统的开发目标 “学生成绩管理系统”针对的学校学生情况对学生各学年的成绩进行有效的管理。能够快速的查询出学生的各科成绩以及所在班级等各种用途。 学生成绩管理系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学院的工作流程设计完成的。为了使系统在学院的管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量,有如下的系统开发目标: 1.系统应具有实用性、可靠性和适用性,同时注意到先进性; 2.对各个数据库进行动态管理,防止混乱;

学生成绩管理系统报告

目录 1、需求与功能分析 3 2、系统总体框架 4 3、模块设计与分析 4 4、类的设计与分析 6 5、特色算法分析7 6、功能测试10 7、存在的不足与对策13 8、程序源代码14 9、使用说明23 10、参考文献23

1、需求与功能分析 (1)需求分析 学生成绩管理系统主要提供成绩查询,便管理的网上的信息查阅平台,学生可以通过该系统查阅与自己相关信息,查看留言、提交留言。教师可以通过成绩管理系统查阅学生成绩信息,教师信息,查看教师留言、学生留言、提交留言、留言的管理等相关操作。系统管理员可以实现以上的所有功能,还有对学生的添加、删除、修改、教师的添加、删除、修改,数据库的备份、数据库的还原等相关操作。 根据开发要求,学生成绩管理系统主要应用于教育系统,完成对日常的教学、教务、教师以及学生的计算机化的管理。开发学生成绩管理系统可使学院教职员工减轻工作压力,比较系统地对教务、教学上的各项服务和信息进行管理,同时,可以减少劳动力的使用,加快查询速度、加强管理,以及各部门关于信息化的步伐,使各项管理更加规化。目前,学校工作繁杂、资料重多。目前,管理信息系统已进入高校,但还未普及,而对于学生成绩管理来说,目前还没有一套完整的、统一的系统。因此,开发一套适和大众的、兼容性好的系统是很有必要的。 (2)功能分析 “学生成绩管理系统”包括九个模块:输入学生资料,输出学生资料,学生姓名按顺

序排列,添加学生资料,按姓名查找,删除该学生资料,查找并显示学生资料,按姓名查找,修改该学生资料,从文件中读入数据,储存学生资料并退出系统。这九个模块既相互联系又相互独立。 本系统根据学生成绩管理的需要,而建立一个“学生成绩管理系统”,以便对成绩的各项管理操作。本系统能对成绩进行输入和输出;能按姓名对学生进行排序,并显示学生资料、成绩等,不过得以系统输入学生资料、成绩为前提;能添加学生成绩资料;能根据学生的姓名来查询该学生的成绩资料,并修改或是删除该学生信息;能够从文件中读取学生信息,并且添加到系统中;能把对系统所进行的操作进行保存,以及时更新系统中的数据。 2、系统总体框架

学生成绩管理系统代码 (1)

C程序学生管理系统 /* Note:Your choice is C IDE */ #include"" #include"" #include"" typedef struct student示所有\t2.按姓名查找\n\t\t\t3.按学号查找\t4.返回主菜单\n"); scanf("%d",&m); fflush(stdin); switch(m) { case 1:printf("\n=>该系统拥有%d名学生!\n\n",head->; p=head->next; printf("\t姓名\t学号\t性别\t数学\t英语\tc语言\t综合\n\n"); while(p) { printf("\t%s\t%d\t%s\t%d\t%d\t%d\t%d\n",p->,p->,p->,p->, p->,p->,p->; p=p->next; } break; case 2:printf("=>请输入查找姓名!\n"); gets(N); fflush(stdin); p=head->next; while(p) { if(strcmp(p->,N)==0) { printf("\t姓名\t学号\t性别\t数学\t英语\tc语言\t 综合\n"); printf("\t%s\t%d\t%s\t%d\t%d\t%d\t%d\n",p->,p->,p->,p->, p->,p->,p->; break; } else {

p=p->next; if(p==NULL) printf("=>你要查的学生不存在!"); } } break; case 3: printf("=>请输入查找学号!\n"); scanf("%d",&m); fflush(stdin); p=head->next; while(p) { if(p->==m) { printf("\t姓名\t学号\t性别\t数学\t英语\tc语言\t 综合\n"); printf("\t%s\t%d\t%s\t%d\t%d\t%d\t%d\n",p->,p->,p->,p->, p->,p->,p->; break; } else { p=p->next; if(p==NULL) printf("=>你要查的学生不存在!\n"); } } break; case 4:n=1;break; } } return 1; } int range(unit *head)学号\t2.按成绩\n\n"); printf("=>请选择操作!\n》"); scanf("%d",&n); fflush(stdin); if(q==NULL) { printf("=>无学生可排序!\n");

学生成绩管理系统详细设计

详细设计说明书1、引言 1.1编写目的 学生成绩管理系统的详细设计是设计的第二阶段,该阶段的根本目标是在概要设计的基础之上确定应该怎样具体地实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种设计语言书写的程序。本说明书提供出一个程序的“蓝图”,以便更好的完成编码任务。学校的现代化管理中,学生的成绩管理是必不可少的一部分。成绩管理的内容对于学校的管理是关重要的,所以,成绩管理系统必须要为用户提供必要的信息和快捷的查询功能。 1.2项目背景 该项目充分利用现代化技术来提高学生成绩查询的效率,使得原始的办公系统更加方便,工作效率也得到提高。 1.3使用工具 1)eclipse:开发工具 2)Mysql:数据库管理软件 3)Navicat Premium:第三方软件显示mysql数据库

4)Tomcat: 使用服务器 5)window7:硬件环境 6)JSP:软件开发语言 2、总体设计 2.1需求概述 学生成绩管理系统是对学校教务和教学活动进行综合管理的平台系统,是一个学校和地区教育信息化的基础信息平台。满足学校管理层、学生、教师的日常工作、学习、查询、管理等工作。目的是共享学校各种信息。提高学校的工作效率、规范学校的工作流程、便利学校与学生及教师的交流。 2.2项目任务范围 学生成绩管理系统共分为三个大的模块:学生成绩查询模块、教师成绩录入模块及管理员对各项信息管理模块。 学生:查询学生个人信息,包括个人成绩查询和修改密码。 教师:查询教师个人信息,包括学生成绩录入和修改密码。 管理员:学生管理(对学生进行增删改查);教师管理(对教师进行增删改查);班级管理(对班级进行增删改查);成绩管理(对学生成绩 的增删改查)所有人的密码管理;个人密码修改。

学生成绩管理系统开发规划方案报告.doc

---- 学生成绩管理系统可行性分析报告 一、系统建立的目的及背景 1、编写目的 当今学生成绩管理的繁索给具有强烈时间观念的行政人员带来 了诸多不便,教学办公室缺少一种完善的学籍管理软件,为了对学生成绩的管理方便,开发人员完成了全面的调查与分析,同时与目标用户 进行了多次深入沟通,主要用于大中专院校学生日常管理工作,以规范的学生档案为基础,实现了学生考勤,学籍变更、学生奖惩、考试成 绩、教师考勤等电算化管理,实现学校人力资源的优化和学生成绩管理的科学管理而设计的,通过试用本系统,可以更加有效的管理学生成绩信息,其中包括学生的基本信息,成绩信息并且具有信息的增加,查询,修改等功能。 2、项目背景 当今学生成绩管理的繁索给具有强烈时间观念的行政人员带来了 诸多不便,教学办公室缺少一种完善的学籍管理软件,为了对学生成绩的管理方便,节省资源,提高工作效率,开发人员完成了全面的调 查与分析,同时与目标用户进行了多次深入沟通,并在次基础上着手

开发《学生成绩管理系统》软件。 二、功能特点: 学生信息查询、存储、共享的整体解决方案 1.学生档案管理: 建立规范的电子学生档案,并实现自动拍照功能,规范、易用。 -----

---- 2.方便的查询功能: 根据要求迅速查找出所有学生档案中符合要求的信息,支持EXCEL 导出,准确、快捷。 3.学生考勤管理 请假申请直接在软件中提交,由主管老师审核,系统自动统计学生请 假次数,高效、明了。 4.学生成绩管理 支持 EXCEL 模板导入学生成绩,系统自动统计各科成绩并排名。 3.学生综合情况报表 独创的《学生情况综合报表》自动分学期将学生档案、成绩、排名、 奖惩、考勤等学生表现情况进行汇总,颠覆了以往期末人工汇总的方 法,全面、简捷。 4.支持多用户管理模式: 用户根据不同权限分别管理各自资料,方便管理、节约成本。 三、可行性研究的前提 1.要求

学生成绩管理系统报告

数据库应用 课程设计说明书 班级:软件工程1404 姓名:徐螣 学号: 201426811322 设计题目:学生成绩管理系统(数据库) 设计时间: 2017.6.25 至 2017.7.6 指导教师:廖峰峰

学生成绩管理系统(数据库) 设计总说明 考虑到高校学生的成绩管理工作量大、繁杂,人工处理非常困难,出现了学生成绩管理系统。它借助于计算机强大的处理能力,大大减轻了管理人员的工作量,并提高了处理的准确性。学生成绩管理系统的开发运用,实现了学生成绩管理的自动化,不仅把广大教师从繁重的成绩管理工作中解脱出来、把学校从传统的成绩管理模式中解放出来,而且对学生成绩的判断和整理也更合理、更公正,同时也给教师提供了一个准确、清晰、轻松的成绩管理环境。 本系统根据我校的一些实际情况开发,用于对学校教师、学生、课程信息的管理,主要用于管理学生成绩。登录系统时需要访问数据库中的用户信息,确定登录身份。系统完成了日常的教育工作中对学生成绩档案的数字化管理,并且较为系统地对学生信息、成绩信息和课程信息进行管理。查询、增添、修改、删除都变的非常简便,减少了管理的工作量。 基于学校学生众多,为了数据的安全性,系统将学生数据保存在数据库中,以Visual C++设计前台对系统进行设计。因为成绩管理系统是一项很实用的系统,所面对的数据量很大,所以我们要求系统能够高效快速的处理这些数据,并且要保证数据的正确性、相容性和安全性。C++作为前台是将数据库中的数据读取出来,有助于用户对这些数据进行相应的操作,使操作更方便,更符合用户的要求。所以该系统应该要有一个良好的界面,使用户感觉很直观,使用快捷,这就是用C++所要实现的功能。 关键词 Visual C++ 6.0;SQL Server;MFC;学生成绩管理

学生成绩管理系统数据流图

学生成绩管理系统数据流图-标准化文件发布号:(9556-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

.3.3.1 创建实体关系图 (1)在需求收集的过程中,要求客户列出应用软件或业务过程涉及到的"事物",将其演化成数据对象; (2)一次考虑一个对象,分析员和客户定义这个对象和其他对象之间是否存在连接; (3)如果存在连接,应创建一个或多个关系; (4)对每一个关系,确定其关联类型; (5)重复步骤(2)到步骤(4),直到定义了所有关系。 (6)定义每个实体的属性; (7)形式化并复审实体关系图; (8)重复步骤(1)到(7),直到数据建模完成。 举例分析: * 实体:学生、课程、成绩。 * 实体属性定义: 学生:学号、姓名、性别、出生日期、入学年月 课程:课程编号、课程名称、课程学分、课程描述 成绩:学号、课程编号、分数、考核日期 * 实体关系图: 首先分析"学生成绩管理系统"的用户要求,找出该系统应该包括的实体。显然,学生、课程和成绩都是系统的实体,并且可以初步定义它们的属性(见上)。教务人员虽然是系统的用户,但其信息与系统处理无关,因此不用作为实体。那么,学生的选课信息是否需要成为实体呢?由于成绩信息包含了选课信息,因此选课信息不用单独记录。最终,确定系统的实体是学生、课程和成绩。

接着,我们分析这些实体之间的关联关系。从实际情况得知,一个学生可以选多门课程,一门课程也可以有多个学生选修,但每个学生选一门课程必须有一个成绩。根据上述分析,我们得到如图所示的实体关系图。 3.3.3.2 创建数据流模型 通常,数据流图是分层绘制的,整个过程反映了自顶向下进行功能分解和细化的分析过程。顶层(也称第0层)DFD用于表示系统的开发范围,以及该系统与周围环境的数据交换关系;最底层DFD代表了那些不可进一步分解的"原子加工";中间层DFD是对上一层父图的细化,其中的每一个加工可以继续细化,中间层次的多少由系统的复杂程度决定。 (1)第0层DFD将整个系统表示成一个加工; (2)确定并标记主要的输入和输出; (3)分离出下一层中的加工、数据对象和存储,并对其进行细化,一次细化一个加工; (4)标记所有加工和箭头; (5)重复步骤(3)和(4),直到所有的加工只执行一个简单的操作,可以很容易地用程序实现。 举例分析: * 第0层DFD图 教务人员维护学生信息和课程信息,并登录学生的选课成绩; 学生查询自己的成绩单。 * 第1层DFD图 对第0层DFD图中的一个加工"学生成绩管理"进行展开。

学生成绩管理系统分析报告

学生成绩管理系统分析报告 ■建立新系统的必要性 随着学校规模的不断扩大,专业、班级、学生的数量急剧增加,有关学生各门课程的成绩的各种信息量也成倍增长,学生成绩管理操作重复工作较多,工作量大,因此,建立学生成绩管理系统来提高工作的效率。基于互联网的学生成绩管理系统,在学生成绩的规范管理、科学统计和快速查询方面具有较大的实用意义,提高了信息的开放性和快速性。使学生信息更加系统化,信息更加精确化。使管理人员管理更加方便,能够改动部分信息,最大化的满足工作的需求。 学生成绩管理系统的建立,在学生查询成绩的规范管理、科学统计和快速查询方面具有较大的实用意义,它提高了信息的开放性,大大改善了学生对其最新信息查询的准确性。成绩管理系统有查找方便、可靠性高、存储量大、易操作、保密性好、信息保存时间长等优点,它能极大的提高老师和学生成绩信息管理的效率。 ■业务流程分析 通过对学生成绩管理业务的调查分析,弄清了学生成绩管理系统的业务流程和管理功能,系统的业务流程如下图所示: 业务流程图部分:

管理功能部分: 从业务流程图可以看出,学生成绩管理系统中分为大的三个方面:系统管理员模块、教师模块、学生模块,其主要管理功能有: 1、系统管理员功能 系统管理员进入学生成绩管理系统的主要功能是:实现管理员用户的添加、修改和删除,以及对教师添加、教师修该、教师删除、教师查询、学生的添加、学生的修改、学生的查询等基本功能,并且参与开设课程、选择课程的管理,安排教师的任课和学生的选课工作,管理元为每门课程设置一个学分,没门课程可以是必修或选修,如果学生及格,学生将获得该课程学分。 2 、教师功能 教师进入学生成绩管理系统的主要功能是:各科教师登录系统后查询和修改个人信息、修改自己的账号密码,查询自己的授课课程,实现对选秀了自己课程的学生的成绩进行查询、录入和修改,各科老师可以对自己学生选修课程结束后给与分数,同时可以对自己所带课程的成绩优秀人数、及格人数和不及格人数的分布信息进行查询。 3 、学生功能 学生进入学生成绩管理系统的主要功能是:每个学生登录系统后可以查询和修改个人信息、修改自己的账号密码,以及自己所选课程任课老师的个人信息,同时在课程结束后可以查询在校期间各个时间段选修课程的成绩与学分,以及对单科成绩和总分的排名查询。

相关文档