搜档网
当前位置:搜档网 › 学生成绩管理系统课程设计文档(C++)

学生成绩管理系统课程设计文档(C++)

学生成绩管理系统课程设计文档(C++)
学生成绩管理系统课程设计文档(C++)

课 程 设 计

学生管理系统课程设计

翟胜雨

20111951

自动化 11-1 谭琦 董学平

2013 年 9 月

设计题目 学 号 专业班级 学生姓名 指导教师

一. 设计任务

a.学校的学生成绩信息管理是学校管理中的一项重要任务,以往的手工操作已经不能适应现在办公的需要.为了摆脱繁琐的劳动,提高工作效率,利用计算机进行信息处理成为必然.开发功能完善及安全可靠的管理系统可以大大提高学校资源的利用率,及时,准确地获取需要的信息,充分发挥人员的工作潜力。因此,不难想象,正是咨询业的迅速发展使得人们从过去的手工劳动中得以解脱.同时,编写一套完善的学生成绩管理系统的任务就显得尤为重要。

b.设计四个类;学生类(描述学生基本信息);学生管理类(对学生信息进行管理);学生成绩及课程信息用文件保存,每个类一个文件,程序执行时从文件读入;

c.能完成对学生成绩的录入,修改,能统计学生的成绩;求学生的总分及平均分;并能根据学生的平均或总成绩进行排序,能按学号或姓名查询学生成绩,能删除改学生成绩;能输出学生的成绩单。

d.应用程序的文本界面设计美观、清洁,有简要的应用程序开发文档。

二. 具体设计

1.需求分析:

a.能对学生各科成绩进行录入:。

b.能显示学生输入的成绩

c.能对学生的成绩进行增加。

d.能对学生的成绩进行删除。

e.能对学生的成绩进行修改。

f.能对学生的成绩按学号,姓名,进行查询。

g.能输出学生的所有数据。

h.能进行成绩统计

i.能进行平均分查询排名。

2.系统性能要求:

a.系统安全、可靠;

b.功能齐全;

c.操作方便、界面友好;

d易于维护和扩充。

3.系统的功能分析:

资料维护:系统维护包括对学生信息的录入操作及数据表中的信息进行浏览。系统功能:可以对数据表中的信息进行浏览。

系统查询:可以对学生的信息进行查询。

4.系统功能模块

学生成绩查询系统有:成绩录入、显示、增加、删除、修改,数据查询,排序显示、输出构成。

5.模块框架图

三、程序功能的分析

1.Student类的声明

class Student

{

public:

char name[20];

char Id[20];

int Cnum; //C++课程得分

int Mnum; //数学课程得分

int Enum; //英语课程得分

float aver; //平均分

Student * Next;

void Input()

{

cout<<"\t\t请输入学生的姓名:"; cin>>name;

cout<<"\t\t请输入学生的学号:"; cin>>Id;

cout<<"\t\t请输入C++课程的成绩:"; cin>>Cnum; cout<<"\t\t请输入数学的成绩:"; cin>>Mnum;

cout<<"\t\t请输入英语的成绩:"; cin>>Enum;

aver=(Cnum+Mnum+Enum)/3.0;

}

void ReadFile(istream & in)

{

in>>name>>Id>>Cnum>>Mnum>>Enum>>aver;

}

void Show()

{

cout<<"姓名:"<

<<"数学:"<

};

2.Studentmassage类的声明

class Studentmassage

{

public:

Studentmassage();

~Studentmassage();

void ShowMenu();

void Find();

void Save();

void ModifyItem();

void RemoveItem();

void Swap(Student *,Student *);

void Sort();

//void Unpass();

int ListCount();

//void Average();

void Display()

{

for(Student * p=Head->Next;p!=End;p=p->Next)

p->Show();

cout<<"输入任意字符!继续……";

getch();

}

void AddItem()

{

End->Input();

End->Next=new Student;

End=End->Next;

cout<<"添加成功!"<

cout<<"输入任意字符!继续……";

getch();

}

private:

Student * Head,* End;

ifstream in;

ofstream out;

Student *FindItem(char * name)

{

for(Student * p=Head;p->Next!=End;p=p->Next)//匹配成功则返回上一个指针,不成功就返回空

if(!strcmp(p->Next->name,name))return p;

return NULL;

}

Student *FindID(char * Id)

{

for(Student * p=Head;p->Next!=End;p=p->Next)//匹配成功则返回上一个指针,不成功就返回空

if(!strcmp(p->Next->Id,Id))return p;

return NULL;

}

};

3.数据记录的添加

void Input()

{

cout<<"\t\t请输入学生的姓名:"; cin>>name;

cout<<"\t\t请输入学生的学号:"; cin>>Id;

cout<<"\t\t请输入C++课程的成绩:"; cin>>Cnum;

cout<<"\t\t请输入数学的成绩:"; cin>>Mnum;

cout<<"\t\t请输入英语的成绩:"; cin>>Enum;

aver=(Cnum+Mnum+Enum)/3.0;

}

void ReadFile(istream & in)

{

in>>name>>Id>>Cnum>>Mnum>>Enum>>aver;

}

4.数据记录的显示

void Show()

{

cout<<"姓名:"<

<<"数学:"<

}

};

5数据记录的删除

void Studentmassage::RemoveItem() // 删除信息

{

char name[20];

Student * p=NULL,*temp=NULL;

cout<<"请输入要删除的学生的姓名:"<>name;

if(p=FindItem(name))

{

temp=p->Next;

p->Next=p->Next->Next;

delete temp;

cout<<"删除成功!"<

cout<<"输入任意字符!继续……";

getch();

}

else

{

cout<<"没有找到!"<

cout<<"输入任意字符!继续……";

getch();

}

}

6.数据记录的查找

void Studentmassage::Find()

{

char name[20] ,Id[10];

int x;

Student * p=NULL;

cout<<"※1.按学生的姓名查找\n\t\t※2.按学生学号查找"; cin>>x;

switch(x)

{

case 1:{cout<<"请输入要查找的学生的姓名:";cin>>name; if(p=FindItem(name))

{

p->Next->Show();

cout<<"输入任意字符!继续……";

getch();

}

else

{

cout<<"没有找到该姓名的学生!"<<'\n'<

cout<<"输入任意字符!继续……";

getch();

}

}break;

case 2:

{

cout<<"请输入要查找的学生的学号:";cin>>Id;

if(p=FindID(Id))

{

p->Next->Show();

cout<<"输入任意字符!继续……";

getch();

}

else

{

cout<<"没有找到该学好的学生!"<<'\n'<

cout<<"输入任意字符!继续……";

getch();

}

}break;

}

}

7.数据记录的排序

void Studentmassage::Swap(Student *p1, Student *p2)//交换两个combox变量的数据域

{

Student *temp=new Student;

strcpy(temp->name,p1->name);

strcpy(temp->Id,p1->Id);

temp->Cnum=p1->Cnum;

temp->Mnum=p1->Mnum;

temp->Enum=p1->Enum;

temp->aver=p1->aver;

strcpy(p1->name,p2->name);

strcpy(p1->Id,p2->Id);

p1->Cnum=p2->Cnum;

p1->Mnum=p2->Mnum;

p1->Enum=p2->Enum;

p1->aver=p2->aver;

strcpy(p2->name,temp->name);

strcpy(p2->Id,temp->Id);

p2->Cnum=temp->Cnum;

p2->Mnum=temp->Mnum;

p2->Enum=temp->Enum;

p2->aver=temp->aver;

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

int Studentmassage::ListCount()//统计当前链表的记录总数,返回一个整数{

if(! Head)

return 0;

int n=0;

for(Student * p=Head->Next;p!=End;p=p->Next)

{

n++;

}

return n;

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::Sort()//对当前链表进行排序

{

cout <<"Sorting..."<

Student *p=NULL,*p1=NULL,*k=NULL;

int n=Studentmassage::ListCount();

if(n<2)

return;

for(p=Head->Next;p!=End;p=p->Next)

for(k=p->Next;k!=End;k=k->Next)

{

if(p->aver>k->aver)

{

Studentmassage::Swap(p,k);

}

}

cout <<"排序完成!"<

getch();

return;

}

8.数据记录的保存

void Studentmassage::Save()

{

out.open("sort.txt");

for(Student *p=Head->Next;p!=End;p=p->Next)

out<name<<"\t"<Id<<"\t"<Cnum<<"\t"

<Mnum<<"\t"<Enum<<"\t"<aver<<'\n';

out.close();

}

三. 调试及测试

调试过程中遇到的主要问题是如何解决的;对设计和编码的回顾讨论和分析;程序运行的时空效率分析;测试数据集;运行实例;改进设想;经验和体会等。

因为是第一次做课程设计,没有经验,同时对操作系统不太了解,在调试及测试的过程中遇到了很多问题,如在编辑的时候总是出现错误,不管自己怎么操作总是消除不了。最后在教老师及同学帮助下解决了这一难题,它是因为自己操作步骤出现了错误。同样,在最后运行的时候输入应当是数字,但,当你输入其他符号时,系统会出现紊乱,这时只有退出程序系统,重新进入时才能进行正常操作。对于这一问题,我绞尽脑汁,翻阅的很多资料,同时,我也参考了其他同学所做的,在我不懈的努力下最总解决了这一问题。虽然最总结果运行正确,但,该系统还存在很多漏洞与不足,要在以后的日子里改进系统使系统更优化。

可能大家在做这一课程设计的时候都会遇到一些问题,首先,我们不应该退缩,不应该被难题所吓到,应该勇往直前,敢于面对。其实,生活就是这样,有困难,又难过,同时又有喜悦,又欢乐,这样生活才是美满的,才是幸福的。说远了,以上是我个人对这次面向课程设计的一点心得。要说经验呢,就是,多看,多练,多问,多想。多看就是多看关于课程设计这一方面的资料,多练就是多用系统在平时多加练习,多问就是自己在不懂的时候就向同学、老师请教,多想就是当自己遇到难题的时候要想一下该怎么做。好了,以上就是我的经验,其实真正的经验实在你自己的学习中,自己的操作中所获得的,这才是最宝贵的。

4使用说明

进出菜单栏后,选着选项,选1时直接输入学生信息,结束时按Enter;

在菜单栏中,对输入的信息显示时,选着2,结束时按Enter;

在菜单栏中,对输入信息进行排序时,选着3,结束时按Enter;

在菜单栏中,对输入信息进行查找时,选着4,按Enter,选1,按姓名查找,选2,按学号进行查找,结束时按Enter;

在菜单栏中,删除信息时,选着5,结束时按Enter;

在菜单栏中,对该输入信息时,选着6,结束时按Enter;

在菜单栏中,退出系统时,选着7,结束时按Enter;

5 运行实例:

请输入任意开始

请选着:1 //进行输入

请输入学生的姓名:zhaowei

请输入学生的学号:20111901

请输入学生c++的成绩:90

请输入学生数学成绩:90

请输入学生的英语成绩:90

添加成功,请输入任意字符继续

请选着:1 //进行输入

请输入学生的姓名:fudongcheng

请输入学生的学号:20111902

请输入学生c++的成绩:91

请输入学生数学成绩:91

请输入学生的英语成绩:91

添加成功,请输入任意字符继续

请选着:1 //进行输入

请输入学生的姓名:yaoyongjian

请输入学生的学号:20111903

请输入学生c++的成绩:92

请输入学生数学成绩:92

请输入学生的英语成绩:92

添加成功,请输入任意字符继续

选2//显示学生成绩

学生的姓名:zhaowei学生的学号:20111901学生c++的成绩:90学生数学成绩:

90 学生的英语成绩:90

学生的姓名:fudongcheng学生的学号:20111902学生c++的成绩:91学生数学成

绩:91学生的英语成绩:91

学生的姓名:yaoyongjian学生的学号:20111903 学生c++的成绩:92 学生数学

成绩:92 学生的英语成绩:92

选3//进行排序再选2显示

选4//进行查找

1按学时能够姓名查找 2按学生学号进行查找

如输入1,

请输入要查找学生的姓名:zhaowei

学生的姓名:zhaowei学生的学号:20111901学生c++的成绩:90学生数学成绩:

90 学生的英语成绩:90

选5//进行删除功能

请输入要删除学生的姓名:zhaowei

选6//进行修改功能

请输入要修改的学生姓名:fudongcheng

请输入要修改学生的学号:20111904

请输入要修改学生的c++成绩:99

请输入要修改学生的数学成绩:99

请输入要修改学生的英语成绩:99

修改成功,请输入任意字符

6 设计小结

本系统是以Visual C++6.0为开发工具编的程序。本系统实现了对学生成绩等信息的显示,添加,查找,修改和删除的功能。第一周结束的时候,我感觉自己收获挺大的,从一开始的迷茫,不知道从何下手到把程序中的几个模块编写出来,心里挺开心的。但是,到了第二周,我由不得不再次陷入困境。在整个程序

的编写过程中。最难的就是修改和删除这两个模块,这也是我们第二周要解决的重点问题。

开始编写修改和删除时,很头疼,去向其他人寻求帮助,在别人的帮助和提示下,我编完了修改程序,但编译时老出错,修改后的内容将文本内的信息全部覆盖了。困难之时,在老师的帮助之下,完成了修改和删除。这样的话,整个程序基本上全部完成了,就剩下完善工作了。我们组写了两个程序,最后,两个程序相互组合,互补,最后大功告成。

虽然设计时完成了,但是我觉得其中还是由一些不足之处:

1. 警告句。程序中缺少一些警告句,例如:“是否真的删除(y/n)?”。

2. 重名的情况。由于考虑的不周全,没有设计遇到重名的情况该怎么处理。

3. 选择单一。本系统设计的程序中,设计的删除模块只是把学生的信息进行全部删除,并没有删除个别信息的选择。

整个程序完成了,还有很多不完善的地方,希望自己以后办事的时候要认真,仔细,考虑周全。

短短的四周课程设计结束了,但是这段时间里,我又学到了更多 C ++的知识,如:类,文件流等,我认识到要想学好计算机就要重视实践操作,不仅仅是学习C++语言,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机。同时,我也发现我的好多不足之处,我也被提醒以后办事的时候要认真,仔细,考虑周全。

此次c++课程设计,在指导教师的精心教导下,我们学会了如何用C++编写一个简单的应用程序。首先要对程序的设计要求有一个比较明确的认识,然后系统分析与系统设计,最后是代码设计与调试。程序实现上,设计了简单的查询界面,将各个功能集中出来按照程序编写原则,便于查询。

根据C++课程所学的概念、理论和方法,按照C++程序设计的基本步骤,设计出一个适当规模的程序;进一步加深对C++语言的理解和掌握。理论联系实际,加深和巩固所学的理论知识,提高实践能力和计算机的综合运用能力。我们编写程序的过程是辛苦与快乐的,程序的编写原则很重要,只要我们在编程,就必须不断改进,才能更好提高编程能力。

附录:源程序

# include

# include

# include

#include //用getch();

using namespace std;

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌Student类﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

class Student

{

public:

char name[20];

char Id[20];

int Cnum; //C++课程得分

int Mnum; //数学课程得分

int Enum; //英语课程得分

float aver; //平均分

Student * Next;

void Input()

{

cout<<"\t\t请输入学生的姓名:"; cin>>name;

cout<<"\t\t请输入学生的学号:"; cin>>Id;

cout<<"\t\t请输入C++课程的成绩:"; cin>>Cnum;

cout<<"\t\t请输入数学的成绩:"; cin>>Mnum;

cout<<"\t\t请输入英语的成绩:"; cin>>Enum;

aver=(Cnum+Mnum+Enum)/3.0;

}

void ReadFile(istream & in)

{

in>>name>>Id>>Cnum>>Mnum>>Enum>>aver;

}

void Show()

{

cout<<"姓名:"<

<<"数学:"<

};

//﹌﹌﹌﹌﹌﹌﹌﹌﹌Studentmassage类﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌class Studentmassage

{

public:

Studentmassage();

~Studentmassage();

void ShowMenu();

void Find();

void Save();

void ModifyItem();

void RemoveItem();

void Swap(Student *,Student *);

void Sort();

//void Unpass();

int ListCount();

//void Average();

void Display()

{

for(Student * p=Head->Next;p!=End;p=p->Next)

p->Show();

cout<<"输入任意字符!继续……";

getch();

}

void AddItem()

{

End->Input();

End->Next=new Student;

End=End->Next;

cout<<"添加成功!"<

cout<<"输入任意字符!继续……";

getch();

}

private:

Student * Head,* End;

ifstream in;

ofstream out;

Student *FindItem(char * name)

{

for(Student * p=Head;p->Next!=End;p=p->Next)//匹配成功则返回上一个指针,不成功就返回空

if(!strcmp(p->Next->name,name))return p;

return NULL;

}

Student *FindID(char * Id)

{

for(Student * p=Head;p->Next!=End;p=p->Next)//匹配成功则返回上一个指针,不成功就返回空

if(!strcmp(p->Next->Id,Id))return p;

return NULL;

}

};

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌构造函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌Studentmassage::Studentmassage()

{

Head=new Student;

Head->Next=new Student;

End=Head->Next;

in.open("sort.txt");

if(!in)

cout<<"这是一个新系统,无学生信息。请先输入。"<

else

{

while(!in.eof())

End->ReadFile(in);

if(End->name[0]=='\0')break;

End->Next=new Student;

End=End->Next;

}

in.close();

cout<<"读取学生信息成功!"<

}

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌析构函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌Studentmassage::~Studentmassage()

{

Save();

for(Student * temp;Head->Next!=End;)

{

temp=Head->Next;

Head->Next=Head->Next->Next;

delete temp;

}

delete Head,End;

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌菜单﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::ShowMenu()

{

cout<<" 学生成绩管理系统"<

cout<<" 1.增加学生成绩"<

cout<<"请选择:";

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌查找函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::Find()

{

char name[20] ,Id[10];

Student * p=NULL;

cout<<"※1.按学生的姓名查找\n\t\t※2.按学生学号查找";

cin>>x;

switch(x)

{

case 1:{cout<<"请输入要查找的学生的姓名:";cin>>name;

if(p=FindItem(name))

{

p->Next->Show();

cout<<"输入任意字符!继续……";

getch();

}

else

{

cout<<"没有找到该姓名的学生!"<<'\n'<

cout<<"输入任意字符!继续……";

getch();

}

}break;

case 2:

{

cout<<"请输入要查找的学生的学号:";cin>>Id;

if(p=FindID(Id))

{

p->Next->Show();

cout<<"输入任意字符!继续……";

getch();

}

else

{

cout<<"没有找到该学好的学生!"<<'\n'<

cout<<"输入任意字符!继续……";

getch();

}

}break;

}

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌修改信息﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌void Studentmassage::ModifyItem() //修改信息

{

char name[20];

Student * p=NULL;

cout<<"\t\t请输入要修改的人的姓名:";cin>>name;

if(p=FindItem(name))

{

cout<<"\t\t已找到学生的信息,请输入新的信息!"<

p->Next->Input();

cout<<"修改成功!"<

cout<<"输入任意字符!继续……";

getch();

}

else

{

cout<<"\t\t没有找到!"<

cout<<"输入任意字符!继续……";

getch();

}

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌删除信息﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::RemoveItem() // 删除信息

{

char name[20];

Student * p=NULL,*temp=NULL;

cout<<"请输入要删除的学生的姓名:"<>name;

if(p=FindItem(name))

{

temp=p->Next;

p->Next=p->Next->Next;

delete temp;

cout<<"删除成功!"<

cout<<"输入任意字符!继续……";

getch();

}

else

{

cout<<"没有找到!"<

cout<<"输入任意字符!继续……";

getch();

}

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::Swap(Student *p1, Student *p2)//交换两个combox变量的数据域

{

Student *temp=new Student;

strcpy(temp->name,p1->name);

strcpy(temp->Id,p1->Id);

temp->Cnum=p1->Cnum;

temp->Mnum=p1->Mnum;

temp->Enum=p1->Enum;

temp->aver=p1->aver;

strcpy(p1->name,p2->name);

strcpy(p1->Id,p2->Id);

p1->Cnum=p2->Cnum;

p1->Mnum=p2->Mnum;

p1->Enum=p2->Enum;

p1->aver=p2->aver;

strcpy(p2->name,temp->name);

strcpy(p2->Id,temp->Id);

p2->Cnum=temp->Cnum;

p2->Mnum=temp->Mnum;

p2->Enum=temp->Enum;

p2->aver=temp->aver;

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

int Studentmassage::ListCount()//统计当前链表的记录总数,返回一个整数{

if(! Head)

return 0;

int n=0;

for(Student * p=Head->Next;p!=End;p=p->Next)

{

n++;

}

return n;

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::Sort()//对当前链表进行排序

{

cout <<"Sorting..."<

Student *p=NULL,*p1=NULL,*k=NULL;

int n=Studentmassage::ListCount();

if(n<2)

return;

for(p=Head->Next;p!=End;p=p->Next)

for(k=p->Next;k!=End;k=k->Next)

{

if(p->aver>k->aver)

{

Studentmassage::Swap(p,k);

}

}

cout <<"排序完成!"<

getch();

return;

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌保存函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌void Studentmassage::Save()

{

out.open("sort.txt");

for(Student *p=Head->Next;p!=End;p=p->Next)

out<name<<"\t"<Id<<"\t"<Cnum<<"\t"

<Mnum<<"\t"<Enum<<"\t"<aver<<'\n';

out.close();

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌主函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌int main()

{

int x,i=0;

bool quit=false;

cout<<" 欢迎进入学生成绩管理系统"<

cout<<"按任意键开始……";

getch();

while(!quit)

{

system("cls");

Grade.ShowMenu();

cin>>x;

switch(x)

{

case 0:quit=true;break;

case 1:Grade.AddItem();break;

case 2:Grade.Display();break;

case 3:Grade.Sort();break;

case 4:Grade.Find();break;

case 5:Grade.RemoveItem();break; case 6:Grade.ModifyItem();break; }

}

return 0;

}

C语言课程设计-学生成绩管理系统-完整版

#include<> #include<> #include<> #include<> /* strcmp函数原型包含*/ #define N 100 /*定义最大学生人数为100*/ struct student /*学生结构体定义*/ { char no[11]; /*学号,10位*/ char name[10];/*姓名,3个汉字*/ char grade[10];/*班级*/ char pro[20];/*专业*/ float score[5];/*储存5门功课的成绩*/ float ave;/*储存平均分*/ int year;/*入学年*/ }stu[N]; int num; void panduani(int); /*通过i的值,判断信息要查找的信息是否存在*/ void output(); /*输出学生成绩函数(公共函数)*/ void init(); /*系统初始化函数*/ void newfile(); /*建立新的数据文件*/ void read1(); /*从数据文件中读取数据*/ void weihu(); /*维护界面函数*/ void new1(); /*新增一个学生成绩函数*/ void xiugai(); /*修改学生成绩*/ void xgcj(int); /*修改成绩*/

void delete1(); /*删除学生信息函数*/ void tongji(); /*统计界面函数*/ void tongji1(); /*计算每个学生平均分*/ void tongji2(); /*计算每门课程的平均分*/ void paixu1(); /*排序函数*/ void paino(); /*按学号排序*/ void paiave(); /*按平均分排序*/ void paidkcj(); /*按单科成绩排序*/ void change(int,int); /*交换结构体数组中的两个记录*/ void outputx(int); /*选择输出单科成绩*/ void find1(); /*查找界面函数*/ int find(char sno[]); /*按学号查找*/ int findname(char cname[]);/*按姓名查找*/ void findyear(int cyear); /*按入学年查找*/ void save(); /*保存文件*/ void stop(); /*停顿函数*/ void stop() /*停顿函数(公共函数)*/ { printf("Press Any Key To Continue...\n"); getchar(); } void output() /*输出学生成绩函数(公共函数)*/ { int i,j;

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

详细设计说明书 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项目任务围 学生成绩管理系统共分为三个大的模块:学生成绩查询模块、教师成绩录入模块及管理员对各项信息管理模块。 学生:查询学生个人信息,包括个人成绩查询和修改密码。 教师:查询教师个人信息,包括学生成绩录入和修改密码。 管理员:学生管理(对学生进行增删改查);教师管理(对教师进行增删改查);班级管理(对班级进行增删改查);成绩管理(对学生成绩 的增删改查)所有人的密码管理;个人密码修改。 2.3系统模块结构图

学生成绩管理系统设计说明书

设计说明 一.本程序的设计思路与体系简述: (1)设计思路: Ⅰ.设计程序预期功能;Ⅱ.确定程序语言与运行环境;Ⅲ.设计程序的整体结构;Ⅳ.用模块化的理念对各个小的功能进行编写并进行初期调试;Ⅴ.将各个小的模块集合成整体,形成真正的功能全面的程序;Ⅵ.对程序进行总的调试修改;Ⅶ.后期完善,修复bug等,以及对新功能的引入,外包处理,最终完成整个程序的设计。 (2)本程序的体系: 二.相关代码 (1)初始化窗口代码: #pragma once #include"StuMan.h" namespace StudentManagement { using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Windows::Forms; using namespace System::Data; using namespace System::Drawing; ///

/// Form1 摘要 /// /// 警告: 如果更改此类的名称,则需要更改 /// 与此类所依赖的所有 .resx 文件关联的托管资源编译器工具的 /// “资源文件名”属性。否则, /// 设计器将不能与此窗体的关联

/// 本地化资源正确交互。 ///

public ref class Form1 : public System::Windows::Forms::Form { public: Form1(void) { InitializeComponent(); // //TODO: 在此处添加构造函数代码 // } protected: /// /// 清理所有正在使用的资源。 /// ~Form1() { if (components) { delete components; } } private: System::Windows::Forms::Button^ button1; protected: private: System::Windows::Forms::ListView^ listView1; private: System::Windows::Forms::Label^ label1; private: /// /// 必需的设计器变量。 /// System::ComponentModel::Container ^components; #pragma region Windows Form Designer generated code /// /// 设计器支持所需的方法 - 不要 /// 使用代码编辑器修改此方法的内容。 /// void InitializeComponent(void) { System::ComponentModel::ComponentResourceManager^ resources = (gcnew System::ComponentModel::ComponentResourceManager(Form1::typeid)); this->button1 = (gcnew System::Windows::Forms::Button()); this->listView1 = (gcnew System::Windows::Forms::ListView()); this->label1 = (gcnew System::Windows::Forms::Label());

人事管理系统课程设计(doc 14页)

MIS课程设计报告

二○○三年九月 目录 一、前言———————————————2 二、系统概况—————————————2 三、需求分析————————————— 2 - 4 四、数据库设计———————————— 5 - 7

五、主程序清单————————————8 六、模块界面—————————————9 -11 七、设计小结————————————— 12 前言 人事管理是每个企业必不可少的。人事档案管理系统一般包括对人事档案的统计、查询、更新、报表输出等功能。 如果人工直接统计的话,工作量将十分庞大,特别是,如果企业员工有几万或几十万人时,人工统计将变得不可能想象。

用计算机可使人们从繁重而又单调的统计运算中解脱出来,仅用一些简单的操作便可及时准确地获得需要的信息。 在设计一个系统时,首先要做好需求分析。合理地运用好Visual FoxPro的基本方法,建立一个适合企业的人事管理系统。 系统概况 一、课题名称: 人事管理系统。 二、设计环境: 开发工具:Microsoft Visual FoxPro 6.0 操作系统:Windows XP 需求分析 一、系统功能分析 人事管理系统的主要任务是对人事档案进行整理,使得能方便快捷地对人事档案进行查询、统计、更新,并且能按一定要求输出报表。 通过该系统,使企业的人事管理工作系统化、规范化、自动化,从而提高企业人事管理的效率。 二、系统功能模块设计

本系统分为如下的几大模块: 1、 主界面模块 该模块提供管理系统的主界面,是主系统的唯一入口和出口,该界面提供用户选择并调用各子模块。 2、 浏览模块 该模块提供全部人事档案的界面。 3、 查询模块 该模块提供查询符合某一条件的人事档案的界面。 4、 统计模块 该模块提供按某一条件进行统计的界面。 5、 编辑模块 该模块提供对按档案进行更改、删除和新增的界面。 6、 报表模块 该模块按一定格式将人事档案以报表格式输出。 三、 数据流图

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

辽宁工业大学 数据库原理与应用课程设计(论文)题目:东北大学学生成绩管理系统 院(系):软件学院 专业班级:软件技术083班 学号:081404090 学生姓名:王晓君 指导教师:张莉莉 教师职称:助教 起止时间:2009.11.23至2009.12.4

课程设计(论文)任务及评语院(系):软件学院教研室:软件教研窒

目录 第1章课程设计目的与要求 (1) 1.1 课程设计目的 (1) 1.2 课程设计的实验环境 (1) 1.3 课程设计的预备知识 (1) 1.4 课程设计要求 (1) 第2章课程设计内容 (2) 2.1 系统设计 (2) 2.2 数据库模型 (3) 2.3 设计窗体和报表 (7) 2.4 窗体和报表模块主要代码 (1) 第3章课程设计总结 (1) 3 参考文献 (1) 4

第1章课程设计目的与要求 本课程的课程设计实际是电子商务和计算机信息管理专业学生学习完《数据库原理及应用(ACCESS 2002)》课程后,进行的一次全面的综合训练,其目的在于加深对数据库基础理论和基本知识的理解,掌握运用数据库应用系统开发软件的基本方法。1.1课程设计的实验环境 硬件要求能运行Windows 9.X操作系统的微机系统。数据库应用系统开发软件可以选用Microsoft Access,或其他数据库管理系统。 1.2 课程设计的预备知识 熟悉数据库的基本知识及一种以上数据库系统开发软件。 1.3 课程设计要求 按课程设计指导书提供的课题,应根据下一节给出的基本需求独立完成八个方面的

设计,标有“可选”的部分可根据设计时间的安排及工作量的大小适当选择。选用其他课题或不同的数据库管理系统,可以组成设计小组,分模块进行,共同协作完成一个应用系统的开发任务。要求书写详细的设计说明书,对复杂的代码段和程序段,应画出程序流程图。在界面设计中,画出每个窗口的布局,有多个窗口时,按模块调用的方式画出窗口调用图,用手工画好报表和标签样式,严禁相互抄袭。

学生成绩管理系统数据库设计文档 - (全)

“学生成绩管理”数据库设计文档 0、前言(一些必要的说明。) 0.1 数据库说明 数据库名:PXSCJ 逻辑名称:学生成绩数据库 数据文件:PXSCJ.mdf 日志文件:PXSCJ_Log 登录名:admin,密码:123456 0.2表命名说明 Cjb:成绩表,保存选课信息 Cxb:查询表,记录boolean值对应信息,1代表男,0代表女。Kcb:课程表。 Tjb:统计表,统计成绩段分布。 Xsb:学生表。 Yhb:用户表,保存系统用户信息。 Jsb: 教师表。 Skb:授课表,记录授课信息。 0.3 系统功能模块图

1、需求分析阶段 说明:学生成绩管理系统需要实现以下功能:一个学生可以选修多门课程,一门课程可以由多个学生选修,学生选修一门课会有一个成绩。一个教师可以教授多个班级,一个教师也可以教授多门课程,一个班级有多个学生,一门课程也可以由多个老师来上,一个老师给一个班级上一门课有确定的时间和地点。不同的用户根据身份不同拥有不同的权限。 (1)数据流图 老师----成绩管理,学生信息管理,权限管理---学生成绩管理系统—成绩查询--学生(要求:用visio实现第一层数据流图,第二层数据流图,第三层数据流图)p121 第一层数据流图 第二层数据流图 第三层数据流图(略) (2)数据字典 (每个实体的详细说明)

2、概念设计阶段 (1)分ER图 (两个分ER图,1)学生和课程,2)教师,课程,班级)

(2) 总ER 图 (由分ER 图画出总ER 图) 3、 逻辑设计阶段 (1) 表关系图 (看是否可以画出) (2) 表结构图 Xsb 结构

学生信息管理系统课程设计说明书

宜春学院数学与计算机科学学院 课程设计说明书 课程名称:课程设计 课程代码: 题目:学生信息管理系统设计说明书 年级/专业/班:12软件工程 学生姓名: 学号: 指导教师: 开题时间: 2014 年 12 月 08 日 完成时间: 2014 年 12 月 27

目录 一、引言............................................................................................... 错误!未指定书签。 二、设计目的与任务............................................................................... 错误!未指定书签。 三、设计方案........................................................................................... 错误!未指定书签。 四、结论............................................................................................... 错误!未指定书签。 五、致谢............................................................................................... 错误!未指定书签。 六、参考文献........................................................................................... 错误!未指定书签。

人力资源管理系统课程设计报告

人力资源管理系统课程设 计报告 Last revision date: 13 December 2020.

课程设计 课程名称大型数据库 题目名称人力资源管理系统专业班级XXXXX 学生姓名XXXXXXXXFX 学号XXXXXXXX 指导教师XXXXXX 二○一○年十二月二十八日 目录

摘要 企业在激烈的市场竞争环境下求得生存,就必须有效地利用人才、时间、信息结合的优势。因此,如何使企业及时掌握本企业人才的各种信息、第一时间处理好随时变化的人力资源管理问题,建立一套符合企业实际的人力资源管理系统就显得尤为重要,而我们所开发研究的企业人力资源管理系统,能帮助企业准确地进行各种数据的输入、更新、计算、汇总、结算、发放等分析统计工作,从而实现了企业人力资源管理的系统化、规范化、自动化。 随着经济水平的发展,知识经济时代给企业人力信息管理提出了更高的要求,除了以往的工资利用计算机软件excel可以管理外,公司更希望能够对以往的各种的人事信息,考勤信息,工作评价信息,工资信息等统一管理起来。高效的、准确的人事管理,不仅能促进员工不断提高自身素质、提高工作积极性。从而提高员工工作质量和效率。 对企业而言,人力资源是企业最宝贵的资源,也是企业的“生命线”。实行电子化的系统管理,可以让人力资源管理人员从繁重琐碎的案头工作解脱出来,去完成更重要的工作,人力资源管理信息系统的实现可以减轻比较繁琐的手工信息管理。 因此能够开发出一个实用,准确的人力资源管理系统对于企业来说是重中之重! 关键词:企业管理、人力资源、信息技术

第一章绪论 问题的提出 随着公司逐年的发展,公司的人力资源管理等事务纷繁芜杂,但大体上这些事务可包括以下几个方面的内容:人事基本信息管理,员工的业务档案管理、员工的工作评价管理、员工的考勤管理、员工的工资管理等。以上各项中的每一个部分都有该方面的管理明细,以员工的基本信息管理为例,包含的明细有:员工编号、姓名、性别、部门、民族、出生年月、政治面貌、家庭住址、联系电话、毕业学校、学历等。若用人工的方法来管理这些数据,不但会造成人力、物力、财力上的浪费,而且因为要处理的信息量过大不容易进行统计和分析。依靠传统的手工管理越来越跟不上公司的发展需要,为了精简人员,提高办事效率和节约公司运营成本,特别需要改变以前单纯依赖人工管理的模式。 解决的方法 开发一个更实用更可靠的人力资源管理系统。具体方法如下:管理一个公司的整个系统的运行,包括员工基本信息,员工工资管理,员工的考勤情况,部门信息,岗位信息等。然后设置不同的用户,给予不同的权限,以进行不同的操作。 1、先创建一个菜单,让用户选择是对哪一类对象进行操作。 2、确定好对哪一类对象进行操作后,程序又创建一个菜单让用户选择对此类对象进行如何操作。操作包括:输入记录、显示记录、修改记录和删除记录。

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

学生成绩管理系统 说明:该课程设计包含两个部分,一个为纯dos系统下的控制台程序,用C++编写;另一个为有界面的MFC项目。 目录 纯dos系统下的控制台程序 1、设计要求 (3) 2、设计分析 (3) 3、调试说明 (4) 4、源代码 (8) 5、实验总结 (21) 有界面的MFC项目 1、设计内容 (22) 2、设计说明 (22) 3、设计步骤 (22) 4、运行演示 (27) 5、实验总结 (29)

纯dos系统下的控制台程序 1、设计要求 现有学生成绩信息,内容如下: 姓名学号语文数学英语 张明明01 67 78 82 李成友02 78 91 88 张辉灿03 68 82 56 王露04 56 45 77 陈东明05 67 38 47 请用C/C++编写一系统,实现学生信息管理,软件的入口界面应包括如下几个方面: 功能要求: (1)信息维护: 要求:学生信息数据要以文件的形式保存,能实现学生信息数据的维护。此模块包括子模块有:增加学生信息、删除学生信息、修改学生信息(2)信息查询: 要求:查询时可实现按姓名查询、按学号查询 (3)成绩统计: 要求:A输入任意的一个课程名(如数学)和一个分数段(如60--70),统计出在此分数段的学生情况。 (4)排序:能对用户指定的任意课程名,按成绩升序或降序排列学生数据并显示排序结果(使用表格的形式显示排序后的输出结果) 其它要求: (1)只能使用C/C++语言,源程序要有适当的注释,使程序容易阅读 (2)至少采用文本菜单界面(如果能采用图形菜单界面更好) (3)学生可自动增加新功能模块(视情况可另外加分) (4)写出课程设计报告,具体要求见相关说明文档 2、设计分析 (1)需求分析: 该程序要能实现对学生成绩信息的增加、删除、修改,实现对学生按姓名查询,按学号查询显示,对任意一个课程名和分数段的学生人数进行输出并统计人数,最好还要根据用户的需求对学生成绩排序。 (2)系统性能要求: a.系统安全、可靠; b.功能齐全; c.操作方便、界面友好; d.易于维护和扩充。 (3)系统功能模块: 学生成绩管理系统包括:增加、删除、修改、显示、信息查询、成绩统计、排序几个部分构成。

学生成绩管理系统需求说明书

学生成绩管理系统 需求说明书 V1.0(版本号) 拟制人 审核人______________________ 批准人______________________ ] 二零一一年六月十五日[ 1.引言 随着计算机的普及,人们对计算机的认识及需求有了明显的增加。计算机对于大量信息的管理的优势更是显而易见。对于一个学校来说,这方面的需要尤其重要。有了这个学生成绩管理系统,管理员的工作任务就可能会事半功倍。 1.1 编写目的:

本需求的编写目的在于学生成绩管理系统软件的开发途径和应用方法,为以后的开发工作提供可靠的依据。 1.2背景及范围: 本项目的名称:学生成绩管理系统。 本项目的任务提出者:金超 本项目的任务开发者:金超小组成员 项目与其他软件或其他系统的关系:该系统在WIN98﹑WIN2000、WIN XP系统中都能很好的运行,具有很好的兼容性。同时,需要对数据库软件Access的支持。 1.3名词定义: 实体:客观世界中存在的且可互相区别的事物。 联系:客观事物中的彼此之间的关系。 属性:实体或者联系所具有的性质。 1.4参考资料: [1] 王珊、萨师煊.数据库系统概论. 北京.高等教育出版社.2006. [2] 王珊等. 数据仓库技术与联机分析处理. 北京.科学出版社.1998. [3] Kimball R等.数据仓库工具箱. 北京. 电子工业出版社,2003. [4] 张奇李律松等. Visual C#数据库项目案例导航. 北京. 清华大学出版社,2005.6 [5] 王石. Visual C#2005语音基础. 北京. 人民邮电出版社,2007 2.任务概述 2.1目标 意在解决当今的庞大信息与人力学生成绩管理系统是针对高等院校的学生成绩的管理, 资源不匹配的矛盾。因此本系统的用户包括系统管理员、教师和学生。使用应户可以在局域网中运行。要求系统有如下意图: (1)用计算机程序实现系统流程。 (2)人机界面友好,对用户的输入要进行判断和约束。 (3)系统稳定性好,对关键程序进行保护。 (4)系统不要求用户配置,安装完数据库和应用程序后即可使用。 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。对于学校而言,实现学生学籍管理的信息化就显得尤为重要,因此,开发一套能够为用户提供充足的信息和快捷的查询手段的学生成绩管理系统,将是非常必要的。 作为计算机应用的一部分,使用计算机对学生档案进行管理,有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、保密性好等。这些优点能够极大地提高学生成绩管理的效率,也是学校向科学化、正规化管理发展的必要条件。 本系统是基于windows 系列操作系统环境以及数据库技术(主要是Access)开发的一个针对高等院校学生成绩管理的管理软件。 2.2用户的特点 本系统的用户主要的应户群是教师、学生和管理员,根据这些用户的特点,我们经调查得出用户有以下要求: (1)管理员、教师和学生登录后可以改自己的密码。 (2)管理员、教师和学生可以查询课程信息。 (3)管理员可以删除学生信息、教师信息、登录用户信息,还可以查询和删除学生成绩,添加、

人事管理系统课程设计报告[1]

MIS课程设计报告 二○○三年九月

目录 一、前言——————————————— 2 二、系统概况————————————— 2 三、需求分析————————————— 2 - 4 四、数据库设计———————————— 5 - 7 五、主程序清单———————————— 8 六、模块界面————————————— 9 -11 七、设计小结————————————— 12 前言

人事管理是每个企业必不可少的。人事档案管理系统一般包括对人事档案的统计、查询、更新、报表输出等功能。 如果人工直接统计的话,工作量将十分庞大,特别是,如果企业员工有几万或几十万人时,人工统计将变得不可能想象。 用计算机可使人们从繁重而又单调的统计运算中解脱出来,仅用一些简单的操作便可及时准确地获得需要的信息。 在设计一个系统时,首先要做好需求分析。合理地运用好Visual FoxPro的基本方法,建立一个适合企业的人事管理系统。 系统概况 一、课题名称: 人事管理系统。 二、设计环境: 开发工具:Microsoft Visual FoxPro 6.0 操作系统:Windows XP 需求分析 一、系统功能分析 人事管理系统的主要任务是对人事档案进行整理,使得能方便快捷地对人事档案进行查询、统计、更新,并且能按一定要求输出报表。

通过该系统,使企业的人事管理工作系统化、规范化、自动化,从而提高企业人事管理的效率。 二、系统功能模块设计 本系统分为如下的几大模块: 1、主界面模块 该模块提供管理系统的主界面,是主系统的唯一入口和出口,该界面提供用户选择并调用各子模块。 2、浏览模块 该模块提供全部人事档案的界面。 3、查询模块 该模块提供查询符合某一条件的人事档案的界面。 4、统计模块 该模块提供按某一条件进行统计的界面。 5、编辑模块 该模块提供对按档案进行更改、删除和新增的界面。 6、报表模块 该模块按一定格式将人事档案以报表格式输出。 三、数据流图

数据结构课程设计学生成绩管理系统

辽宁科技大学 课程设计报告设计题目:学生成绩管理 学院、系:电子与信息工程学院 专业班级:计算机11-2 班 学生姓名:赵月 指导教师:龙艳彬 成绩: 2013年1 月8 日 目录

一、需求分析------------------------------------------------3 二、概要设计------------------------------------------------3 三、详细设计------------------------------------------------5 3.1系统流程图-----------------------------------------------------5 3.2界面设计-------------------------------------------------------6 3.3各功能模块的设计----------------------------------------------7 四、测试与分析---------------------------------------------9 五、总结-----------------------------------------------------15 六、附录(源代码)--------------------------------------16 1.需求分析 1.1问题描述 本系统实现了学生成绩管理的功能,具有学生成绩的输入、读取、查询、修改、插入、删除、排序,统计等功能。

1.2基本要求 (1) 输入的形式和输入值的范围; 首先输入学生个数,按回车键。按照提示选择,将学生信息保存在文本文档中,具体对学生信息进行插入删除查询操作时,将保存在文本文档中的学生信息提取出来,保存在自己定义的数据结构中,然后再对该数据结构进行操作,所有操作完成,或者在相应的命令后,再将学生信息保存到文本文档中。输入数据类型主要是char、int、float等数据类型,输入内容包括:学期、学号、姓名、高等数学成绩,数据机构成绩,大学英语成绩总分,平均分等数据。 (2) 输出的形式; 学期、学号、姓名、高等数学成绩,数据结构成绩,大学英语成绩,总分,平均分等数据。 (3) 程序所能达到的功能; 1. 数据输入功能,输入的数据能最终保存在文件中; 2.数据删除功能,能最终从文件中删除; 3. 排序功能,根据自己设计的数据结构,设计排序算法 4.多种查询(如按学号查询、按姓名查询、按成绩查询等)及输出功能; 6. 学生信息的修改(比如修改学生姓名,修改学生某门课程的成绩) 7. 其它功能(如各种统计,统计每个学生所有课程的平均分,统计某门课程所有学生的平均分等等) 2、概要设计 1. 数据结构:数组(顺序存储结构) 2. 程序模块: (1)先编入系统所需的库函数,使程序可运行 #include #include #include //主要是对cin,cout之类的一些操纵运算,是I/O流控制头文件。 #include //文件和标准控制台的输入输出 #include (2)主界面的设计 在主界面中包括“①输入学生信息并保存到文件②读取文件并输出学生信息③按学号及学期查询④按姓名及学期查询⑤按学号及学期修改信息⑥插入信息⑦按学号及学期

学生成绩管理系统需求文档

学生成绩管理系统需求文档 一、项目概述 1.开发背景 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已经进入人类社会的各个领域并发挥着越来越重要的作用,然而在计算机 应用普及以前我国大部分高校的学生信息管理仅靠人工进行管理和操作,这种管理 方式存在着许多缺点,如:效率低,密保性差,另外时间一长,将产生大量的文件 和数据,其中有些是冗余或者针对同一目的的数据不相吻合,这对于查找、更新和 维护文件等管理工作带来了不少困难,同时也跟不上信息时代高速、快捷的要求, 严重影响了消息的传播速度。然而现今学校的规模不断扩大,学生数量急剧增加, 有关学生的各种信息也成倍增长,人工管理信息的缺点日渐突出,面对庞大的学生 信息量,如何利用现代信息技术使其拥有快捷、高效的适应能力已成为当务之急。 正因为如此,学生信息管理系统成为了教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生信息管理系统应该能够为用 户提供充足的信息和快捷的查询手段。作为计算机应用的一部分,使用计算机对学 生信息进行管理,具有着手工管理所无法比拟的优点。例如:检索迅速。查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大的提高学 生信息管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件,由 此看来开发这样一套管理软件是很有必要的。学生信息管理系统是典型的信息管理 系统(MIS),其开发功能主要包括对学生各种信息的建立、管理、查询等功能。 2.项目描述 该学生管理系统应用于高校学生信息管理,主要有3个主要功能模块组成,分别是:学生信息管理系统模块,学生成绩管理模块和系统管理模块。学生信 息管理模块包括对学生的学籍等基本信息的查看和维护管理;学生成绩管理模块主 要包括对学生成绩的录入和查询;系统管理主要包括对系统数据字典以及管理员的 维护模块。除了这三大主要功能模块之外还涉及到于本系统相关的一系列小的功能 模块,例如,学科管理、班主任管理等。本系统设计的学生信息管理系统很好的解 决了学生信息管理方面的困难,提高了学生信息管理效率、减轻了教务员的工作负 担,节省了大量的人力、物力资源,给高校学生信息管理带来了很大的方便 3.系统目标 该系统要实现的功能有: ●学生信息管理:包括添加学生信息,修改学生信息 ●学生成绩管理:包括添加学生成绩、修改学生成绩、删除学生成绩 ●系统管理:维护系统数据字典、添加管理员、删除管理员、修改管理员信息 除了这三大主要功能模块之外还涉及到于本系统相关的一系列小的功能模块,例 如,学科管理、班主任管理等。

学生成绩管理系统需求分析说明书

学生成绩管理系统 第一章引言 (1) 1.1 目的: (1) 1.2 背景 (1) 1.3 定义 (2) 1.4 参考资料 (2) 第二章任务概述 (2) 2.1 目标 (2) 2.2 运行环境 (2) 第三章数据描述 (2) 3.1 静态数据 (3) 3.2 动态数据 (3) 3.3 数据库描述 (3) 3.4 数据字典 (4) 3.5 数据采集 (4) 第四章功能需求 (5) 4.1 功能划分 (5) 4.2 功能简述 (5) 第五章性能需求 (5) 5.1 数据精确度 (5) 5.2 时间特性 (5) 5.3 适应性 (5) 第六章运行需求 (5) 6.1用户界面 (5) 6.2硬件接口 (5) 6.3软件接口 (5) 6.4故障处理 (5) 第七章其他需求 (6) 第一章引言 1.1 目的: 运用软件对学生的成绩进行管理,科学而有效,不仅可以减少教师的工作量,方便学校对于所有学生的成绩进行系统的管理,而且便于学生适时的查询自己的成绩。一款优秀的学生成绩管理软件,正好可以满足当前的市场需求,取得一定的经济效益。本软件就是针对此种情况和客户需求而开发。本说明书明确了客户的各项需求,为程序开发人员明确了所开发软件应具有的功能和注意事项。 1.2 背景 ?开发软件名称:学生成绩管理系统。 ?项目开发者:山东艾仪嘉软件技术有限公司开发小组: 张钊锋(组长),杨廷婷,黄婷,林德伟,屠伟,张旭松,张杰

?用户单位: 1.3 定义 VB 是Visual Basic的简写,是可视化的编程语言。是一种简单、高效地开发应用软件的工具。 SQL (Structured Query Language)是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。 数据流图简称DFD,就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。 E-R图(Entire and Relation)为实体-联系图,提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。 数据字典(Data dictionary)是一种用户可以访问的记录数据库和应用程序元数据的目录。主动数据字典是指在对数据库或应用程序结构进行修改时,其内容可以由DBMS自动更新的数据字典。被动数据字典是指修改时必须手工更新其内容的数据字典。 静态数据系统内部有关的数据结构和操作规程。 动态数据程序运行时输入和输出的数据。 数据采集又称数据获取,是利用一种装置,从系统外部采集数据并输入到系统内部的一个接口。 1.4 参考资料 文档引用的规范: 《软件工程导论》张海藩主编清华大学出版社2005年8月出版 《软件生命周期质量保证与测试》张向宏主编电子工业出版社2009年5月出版技术资料参考: 《数据库原理与应用案例教程》郑玲利主编清华大学出版社2008年9月出版 《Visual Basic完全自学手册》俞磊等编著机械工业出版社2009年1月出版 第二章任务概述 2.1 目标 使点菜信息更加系统化,信息更加精确化。使管理人员管理更加方便,能够改动部分信息,最大化的满足客户的需求。系统能自动保存信息,给查找数据留下依据。 2.2 运行环境 硬件环境:计算机(含键盘、鼠标等),打印机等外围设备。 软件环境: 建议配置:操作系统windows 2000/XP/Vista CPU PentiumⅣ以上 内存128M以上 硬盘空间100M以上 第三章数据描述

学生成绩管理系统-数据库课程设计

德州学院信息管理学院 课程设计报告 实习名称数据库课程设计 设计题目基于Java+MySQL的学生成绩管理系统的设计与实现实习时间 . 专业班级2011级计算机网络技术专 指导老师王丽丽 教学单位(盖章) 小组分工情况: 二〇一三年六月三十日 目录

摘要 (1) 1 引言错误!未定义书签。 问题的提出错误!未定义书签。 国内外研究的现状错误!未定义书签。 目的与分析错误!未定义书签。 2 程序的主要功能错误!未定义书签。 添加功能错误!未定义书签。 删除功能错误!未定义书签。 显示功能错误!未定义书签。 查找功能错误!未定义书签。 修改功能错误!未定义书签。 3 程序运行平台错误!未定义书签。 4 总体设计错误!未定义书签。 5 数据库设计错误!未定义书签。 数据库概念设计错误!未定义书签。 表结构错误!未定义书签。 视图错误!未定义书签。 6 模块分析错误!未定义书签。 添加模块错误!未定义书签。 显示模块错误!未定义书签。 修改模块错误!未定义书签。 查找模块错误!未定义书签。 删除模块错误!未定义书签。 登陆模块错误!未定义书签。 7 界面设计错误!未定义书签。 登陆界面错误!未定义书签。 学生信息添加界面错误!未定义书签。 学生成绩查询界面错误!未定义书签。 学生成绩修改界面错误!未定义书签。 8 系统测试错误!未定义书签。 9 结论错误!未定义书签。 10参考文献 (29) 德州学院学生成绩管理系统的设计与实现 摘要:学生成绩管理系统主要用于各类大学院校在教学这一部分的管理,是针对于教务处对课程、对学生、对学生成绩进行合理地安排以及统筹计划,以便让教务处以最短的工作时间内把学生的成绩核算出来,提高教务处的办事效率。同时,能够随时对学生基本信息、学生成绩进行各种查询,以便及时很好地对需要了解的信息得到相应的反馈,能有效的帮助教务处的工作,可使学院教职工减轻工作压力,

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

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

2. 学生成绩的管理,基本功能如下: (1)学生成绩的输入、修改、删除等基本操作; (2)成绩的查询功能,可以按学号、姓名等进行成绩查询; (3)成绩的综合统计功能,包括学生成绩按照不同条件进行排名,管理人员可以选择不的排序条件,并可以将排序结果进行打印输出; (4)计算每个学生的总成绩、平均成绩,所有学生单科的平均成绩,找出总成绩和单科成绩最高的学生并输出; (5)计算各班的总分和平均分,并按照平均分将各班成绩进行排序。 (6)统计不及格考生的信息; (7)学生奖励统计,自动生成每班获得奖学金的同学的信息,并可以将奖学金分成不同的等级,以及所得奖学金的数目。 要求学生在对课题的理解基础上,按照以下要求撰写课程设计报告,主要内容包括:(1)对该课题进行需求分析,并提交数据字典; (2)基于以上的需求描述,使用E-R图为该数据库设计概念模型,并将E-R数据模型转换成关系模型; (3)对于设计好关系模式集,利用SQL语句定义各个关系模式,定义各关系模式间的联系,及参照完整性的约束; (4)学生们可以根据自身情况,选择某种高级语言完成相关功能要求; (5)装入数据,并完成各项操作要求; 4 运行环境、开发环境与开发工具 1. 硬件环境:客户端需为奔腾Ⅲ或以上兼容机,且具备上网条件。 2. 软件环境:操作系统为Windows 2000 Server或其以上操作系统、数据库服务器为Microsoft SQL SERVER2000或其以上。 3. 系统开发工具:学生可以根据自身情况,选择最熟悉的高级语言进行系统的设计与实现,如Visual Basic、Visual C++、JAVA、ASP、JSP、C# 等软件,要求可以通过相应组件访问数据库。

人力资源课程设计报告

人力资源课程设计报告 人力资源课程设计报告该怎么写呢?下面XX整理了人力资源课程设计报告,欢迎大家阅读借鉴! 篇一:人力资源课程设计报告企业在激烈的市场竞争环境下求得生存,就必须有效地利用人才、时间、信息结合的优势。因此,如何使企业及时掌握本企业人才的各种信息、第一时间处理好随时变化的人力资源管理问题,建立一套符合企业实际的人力资源管理系统就显得尤为重要,而我们所开发研究的企业人力资源管理系统,能帮助企业准确地进行各种数据的输入、更新、计算、汇总、结算、发放等分析统计工作,从而实现了企业人力资源管理的系统化、规范化、自动化。 随着经济水平的发展,知识经济时代给企业人力信息管理提出了更高的要求,除了以往的工资利用计算机软件excel可以管理外,公司更希望能够对以往的各种的人事信息,考勤信息,工作评价信息,工资信息等统一管理起来。高效的、准确的人事管理,不仅能促进员工不断提高自身素质、提高工作积极性。从而提高员工工作质量和效率。 对企业而言,人力资源是企业最宝贵的资源,也是企业的“生命线”。实行电子化的系统管理,可以让人力资源管理人员从繁重琐碎的案头工作解脱出来,去完成更重要的工

作,人力资源管理信息系统的实现可以减轻比较繁琐的手工信息管理。 因此能够开发出一个实用,准确的人力资源管理系统对于企业来说是重中之重! 关键词:企业管理、人力资源、信息技术 第一章绪论 问题的提出 随着公司逐年的发展,公司的人力资源管理等事务纷繁芜杂,但大体上这些事务可包括以下几个方面的内容:人事基本信息管理,员工的业务档案管理、员工的工作评价管理、员工的考勤管理、员工的工资管理等。以上各项中的每一个部分都有该方面的管理明细,以员工的基本信息管理为例,包含的明细有:员工编号、姓名、性别、部门、民族、出生年月、政治面貌、家庭住址、联系电话、毕业学校、学历等。若用人工的方法来管理这些数据,不但会造成人力、物力、财力上的浪费,而且因为要处理的信息量过大不容易进行统计和分析。依靠传统的手工管理越来越跟不上公司的发展需要,为了精简人员,提高办事效率和节约公司运营成本,特别需要改变以前单纯依赖人工管理的模式。 解决的方法 开发一个更实用更可靠的人力资源管理系统。具体方法如下:管理一个公司的整个系统的运行,包括员工基本信息,

相关主题