学生信息管理系统报告.docx

上传人:b****2 文档编号:1825075 上传时间:2023-05-01 格式:DOCX 页数:23 大小:20.49KB
下载 相关 举报
学生信息管理系统报告.docx_第1页
第1页 / 共23页
学生信息管理系统报告.docx_第2页
第2页 / 共23页
学生信息管理系统报告.docx_第3页
第3页 / 共23页
学生信息管理系统报告.docx_第4页
第4页 / 共23页
学生信息管理系统报告.docx_第5页
第5页 / 共23页
学生信息管理系统报告.docx_第6页
第6页 / 共23页
学生信息管理系统报告.docx_第7页
第7页 / 共23页
学生信息管理系统报告.docx_第8页
第8页 / 共23页
学生信息管理系统报告.docx_第9页
第9页 / 共23页
学生信息管理系统报告.docx_第10页
第10页 / 共23页
学生信息管理系统报告.docx_第11页
第11页 / 共23页
学生信息管理系统报告.docx_第12页
第12页 / 共23页
学生信息管理系统报告.docx_第13页
第13页 / 共23页
学生信息管理系统报告.docx_第14页
第14页 / 共23页
学生信息管理系统报告.docx_第15页
第15页 / 共23页
学生信息管理系统报告.docx_第16页
第16页 / 共23页
学生信息管理系统报告.docx_第17页
第17页 / 共23页
学生信息管理系统报告.docx_第18页
第18页 / 共23页
学生信息管理系统报告.docx_第19页
第19页 / 共23页
学生信息管理系统报告.docx_第20页
第20页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

学生信息管理系统报告.docx

《学生信息管理系统报告.docx》由会员分享,可在线阅读,更多相关《学生信息管理系统报告.docx(23页珍藏版)》请在冰点文库上搜索。

学生信息管理系统报告.docx

学生信息管理系统报告

资料范本

 

本资料为word版本,可以直接编辑和打印,感谢您的下载

 

学生信息管理系统报告

 

地点:

__________________

时间:

__________________

 

说明:

本资料适用于约定双方经过谈判,协商而共同承认,共同遵守的责任与义务,仅供参考,文档可直接下载或修改,不需要的部分可直接删除,使用时请详细阅读内容

《基于Web的Java开发设计》

项目实践

题目:

基于C++语言的学生信息管理系统开发

院(系):

软件学院

专业年级:

软件工程2010级

姓名:

张洪亮

学号:

101530215

2012年6月10日

前言

学生信息管理系统,是针对学校人事处的大量业务处理工作而开发的管理软件,是典型的管理信息系统。

它是一个教育单位不可缺少的部分,它的内容对于学校管理者来说是至关重要的,能有效的帮助学校和老师掌握学生的情况。

在传统模式下利用人工进行学生信息管理,存在着较多的缺点,如:

效率底,保密性差,时间一长将产生大量的文件和数据,更不便于查找,更新,维护等。

诸如这些情况,令学校管理者对学生的信息管理带来了很大困难,严重影响了教育工作者的工作效率。

随着科学技术的不断提高,使用日趋成熟的计算机技术来代替传统的人工模式,来实现学生信息的现代化管理,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。

作为计算机应用的一部分,使用计算机对学生信息进行管理,具有着手工管理所无法比拟的优点。

例如:

检索迅速、查找方便、易修改、可靠性高、存储量大、数据处理快捷、保密性好、寿命长、成本低等。

这些优点能够极大地提高学生信息管理的效率,也是学校实现科学化、正规化管理的重要条件。

因此,开发这样一套管理软件成为很有必要的事情。

TOC\o"1-3"\h\z\uHYPERLINK\l"_Toc327267625"前言PAGEREF_Toc327267625\h1

HYPERLINK\l"_Toc327267626"一、系统概述PAGEREF_Toc327267626\h3

HYPERLINK\l"_Toc327267627"1.1功能简介PAGEREF_Toc327267627\h3

HYPERLINK\l"_Toc327267628"1.2设计思路PAGEREF_Toc327267628\h3

HYPERLINK\l"_Toc327267629"第二章系统功能的分析和设计PAGEREF_Toc327267629\h4

HYPERLINK\l"_Toc327267630"2.1初始录入功能PAGEREF_Toc327267630\h4

HYPERLINK\l"_Toc327267631"2.2添加函数PAGEREF_Toc327267631\h4

HYPERLINK\l"_Toc327267632"2.3删除函数PAGEREF_Toc327267632\h4

HYPERLINK\l"_Toc327267633"2.4修改函数PAGEREF_Toc327267633\h4

HYPERLINK\l"_Toc327267634"2.5查询函数PAGEREF_Toc327267634\h5

HYPERLINK\l"_Toc327267635"2.5.1按学号查询PAGEREF_Toc327267635\h5

HYPERLINK\l"_Toc327267636"2.5.2按姓名查询PAGEREF_Toc327267636\h5

HYPERLINK\l"_Toc327267637"2.6显示函数PAGEREF_Toc327267637\h5

HYPERLINK\l"_Toc327267638"2.7退出系统PAGEREF_Toc327267638\h5

HYPERLINK\l"_Toc327267639"第三章调试及运行结果PAGEREF_Toc327267639\h6

HYPERLINK\l"_Toc327267640"3.1主菜单PAGEREF_Toc327267640\h6

HYPERLINK\l"_Toc327267641"3.2显示功能PAGEREF_Toc327267641\h6

HYPERLINK\l"_Toc327267642"3.3增加功能PAGEREF_Toc327267642\h7

HYPERLINK\l"_Toc327267643"3.4删除功能PAGEREF_Toc327267643\h7

HYPERLINK\l"_Toc327267644"3.5修改功能PAGEREF_Toc327267644\h8

HYPERLINK\l"_Toc327267645"3.6查询功能PAGEREF_Toc327267645\h8

HYPERLINK\l"_Toc327267646"进入主菜单后选择1,进入查询功能,如图3-6:

PAGEREF_Toc327267646\h8

HYPERLINK\l"_Toc327267647"第四章总结PAGEREF_Toc327267647\h9

HYPERLINK\l"_Toc327267648"4.1遇到的问题及解决方法PAGEREF_Toc327267648\h9

HYPERLINK\l"_Toc327267649"4.2收获和体会PAGEREF_Toc327267649\h9

一、系统概述

1.1功能简介

本软件是一个简单的学校学生信息管理系统,软件窗口为DOS页面。

学生信息管理系统的功能主要是实现学校学生的信息化管理。

通过学生信息管理系统,教学管理人员可以实现对学生信息的增加、删除、修改和查询等操作。

本系统最大的优点就是操作简便快捷等。

1.2设计思路

将学生信息定义为一个students结构体,在结构体中包含成员intxuehao;charname[8];charxingbie[4];charnianji[20];chardizhi[80];chardianhua[16];floatyuwen;floatshuxue;floatyingyu;floatzongfen;,分别表示学号、姓名、性别、年级、家庭住址、联系电话。

公有成员函数包括bulidline(),chaxun(stu*head),insert(stu*head,stu*std),xiugai(stu*head),shanchu(stu*head),liulan(stu*head),paixu(stu*head),xiufu(stu*head),main(),分别用来实现对学生信息的数据初始录入、增加数据、删除数据、修改数据、查询数据、显示所有数据等功能。

主函数是一个程序必不可少的,在主函数中,使用一个switch语句来选择调用主菜单中的各个功能函数。

第二章系统功能的分析和设计

在本章中,主要是介绍各个功能函数的设计思路和实现方法。

2.1初始录入功能

此函数实现的功能主要是,对学生信息的初始化录入功能,在初始时,文件中没有任何数据,可以通过次函数输入任意个学生的信息,在输入时通过一个if条件语句来实现控制循环,当输入的姓名是“0”时,使用break语句就跳出循环,即停止输入学生信息。

在此函数中使用文件处理的方式,先建立一个文件输出流对象,以写的方式打开f1.txt文件,使输入的学生信息都写入文件。

2.2添加函数

此函数实现的功能主要是,添加一个学生的信息,也就是说调用一次这个函数只能添加一个学生的信息。

在此函数中也使用文件处理的方式,但使用的是以追加的方式打开文件,使输入的学生信息写在文件里原有信息的后面。

2.3删除函数

此函数实现的功能主要是,删除一个学生的信息。

在此函数中,先以读的方式打开文件,读出文件里的信息在显示在屏幕上,用户再根据提示信息输入想要删除第几个人的信息,关闭文件。

再以写的方式打开文件,以一个if条件语句控制,再重新将学生信息写入文件(除了打算删除的那个学生的信息),由于是以写的方式打开的文件,所以文件里原有的输入就都没有了,存入的新的数据。

2.4修改函数

此函数实现的功能主要是,修改一个学生的信息。

此函数的设计方法和删除函数的设计思想相类似,应用的思想都是将学生信息重新写入文件的方法,将原有数据覆盖。

2.5查询函数

在查询功能中,可以按多条件查询,本系统分为两个查询条件,即按学号查询和按姓名查询。

使用if语句来选择查询条件。

2.5.1按学号查询

根据提示信息输入学号后,然后使用一个for循环语句,从第一个学生开始检索,如果该学生的学号和输入的学号相等,则输出该学生的信息,由于学生的学号是唯一固定的,所以并使用break语句跳出循环。

当无查询结果时,会输出一条提示信息“无此人信息!

”。

2.5.2按姓名查询

根据提示信息输入姓名后,然后使用一个for循环语句,从第一个学生开始检索,如果该学生的姓名和输入的姓名一样,则输出该学生的信息,由于学生的姓名有可能重复出现,所以不能使用break语句跳出循环,应该从第一个学生开始检索直到最后一名学生。

当无查询结果时,会输出一条提示信息“无此人信息!

”。

2.6显示函数

此函数实现的功能主要是,显示所有学生的信息。

先是从文件中读取学生信息,然后在输出到显示窗口中。

用一个for循环语句,来把所有学生的信息都输出。

2.7退出系统

当输入“0”时,就能退出系统,这是通过while语句来控制实现的。

第三章调试及运行结果

3.1主菜单

主菜单显示如下:

图3-1主菜单

3.2显示功能

按4则显示全部信息,如图3-2:

图3-2显示功能

3.3增加功能

进入主菜单后选择2,进入增加功能,按要求输入学生信息,增加数据前显示如图3-2:

增加后显示如图3-3:

图3-3增加后

3.4删除功能

进入主菜单后选择5,进入删除功能,按要求输入要删除的学生信息,删除数据前显示如图3-3:

删除数据后显示如图3-4:

图3-4删除后

3.5修改功能

进入主菜单后选择4,进入修改功能,按要求输入要修改的学生信息,修改数据前显示如图3-4:

修改后如图3-5:

图3-5修改后

3.6查询功能

进入主菜单后选择1,进入查询功能,如图3-6:

图3-6学号查询

第四章总结

4.1遇到的问题及解决方法

首先,是对文件的处理不够熟练,通过看书和搜集一些资料解决了这个问题;其次,是在编写程序的过程中出现了一些语法错误,后通过调试逐一解决。

4.2收获和体会

此次c++面向对象课程设计,在指导教师的精心教导下,我们学会了如何用C++编写一个简单的应用程序。

首先要对程序的设计要求有一个比较明确的认识,然后系统分析与系统设计,最后是代码设计与调试。

程序实现上,设计了简单的菜单界面,将各个功能集中出现在主菜单中,便于调用。

根据C++课程所学的概念、理论和方法,按照C++程序设计的基本步骤,设计出一个适当规模的程序;进一步加深对C++语言的理解和掌握。

理论联系实际,加深和巩固所学的理论知识,提高实践能力和计算机的综合运用能力。

我们编写程序的过程是辛苦与快乐的,程序的编写原则很重要,只要我们在编程,就必须不断改进,才能更好提高编程能力。

参考文献

[1]《C++语言程序设计(第三版)》,郑莉,清华大学出版社,2004

[2]《C++语言程序设计案例教程》,郑莉,清华大学出版社,2005

[3]《C++程序设计教程》,钱能主编,清华大学出版社,1999.4

[4]《C++程序设计》,谭浩强,清华大学出版社,2004

[5]《C++程序设计实践指导》,谭浩强,清华大学出版社,2005

[6]《C++程序设计课程设计》,刘振安,机械工业出版社,2004.8

附录:

程序代码

#include

#include

#include

#include

#include

usingnamespacestd;

typedefstructstudents

{

intxuehao;

charname[8];

charxingbie[4];

charnianji[20];

chardizhi[80];

chardianhua[16];

floatyuwen;

floatshuxue;

floatyingyu;

floatzongfen;

structstudents*next;

}stu;

stu*bulidline()

{

stu*head,*p,*q;

stua;

head=(stu*)malloc(sizeof(stu));//开辟新空间

if(head==NULL)return0;

FILE*fp=fopen("students.txt","r");

q=head;

do

{

fscanf(fp,"%d%s%s%s%s%s%f%f%f\n",&a.xuehao,a.name,a.xingbie,a.nianji,a.dizhi,a.dianhua,&a.yuwen,&a.shuxue,&a.yingyu);

p=(stu*)malloc(sizeof(stu));

p->xuehao=a.xuehao;

strcpy(p->name,a.name);

strcpy(p->xingbie,a.xingbie);

strcpy(p->nianji,a.nianji);

strcpy(p->dizhi,a.dizhi);

strcpy(p->dianhua,a.dianhua);

p->yuwen=a.yuwen;

p->shuxue=a.shuxue;

p->yingyu=a.yingyu;

p->zongfen=a.yuwen+a.shuxue+a.yingyu;

q->next=p;

q=p;

}while(!

feof(fp));

p->next=NULL;

fclose(fp);

returnhead;

}

voidchaxun(stu*head)

{

stu*q,*p;

q=head;

intxuehao,r=0,i=0;

while

(1)

{

loop2:

cout<<"\t\t\t请输入查询学生学号:

"<

cout<<"\t\t\t";cin>>xuehao;

system("cls");

p=q->next;

for(p;p!

=NULL;p=p->next)

{

if(p->xuehao==xuehao)

{

cout<<"\t\t\t学号:

"<xuehao<

"<name<

"<xingbie<

"<nianji<

"<dizhi<

"<dianhua<

"<yuwen<

"<shuxue<

"<yingyu<

"<zongfen<

i=1;

break;

}

elsei=0;

}

if(i==0)

{

cout<<"\t\t\t该生信息不存在或输入错误,请重新输入!

"<

gotoloop2;

}

loop:

cout<<"\t\t\t下一步:

"<

cout<<"\t\t\t1、查询下一个;2、结束"<

cout<<"\t\t\t";cin>>r;

system("cls");

if(r==2)return;

if(r!

=1)

{

cout<<"\t\t\t输入有误,请重新输入!

"<

gotoloop;

}

}

}

intinsert(stu*head,stu*std)

{

stu*p,*q,*s;

s=(stu*)malloc(sizeof(stu));

q=head;

p=head->next;

while(p!

=NULL)

{

q=p;

p=p->next;

}

q->next=s;

s->next=p;

s->xuehao=std->xuehao;

strcpy(s->name,std->name);

strcpy(s->xingbie,std->xingbie);

strcpy(s->nianji,std->nianji);

strcpy(s->dizhi,std->dizhi);

strcpy(s->dianhua,std->dianhua);

s->yuwen=std->yuwen;

s->shuxue=std->shuxue;

s->yingyu=std->yingyu;

s->zongfen=std->yuwen+std->shuxue+std->yingyu;

return0;

}

intxiugai(stu*head)

{

stu*q,*p;

q=head;

intxuehao,r=0,j=0;

while

(1)

{

inti=0;

cout<<"\t\t\t请输入要修改信息学生学号:

"<

cout<<"\t\t\t";cin>>xuehao;

system("cls");

p=q->next;

for(p;p!

=NULL;p=p->next)

{

if(p->xuehao==xuehao)

{

cout<<"\t\t\t学号:

"<xuehao<

cout<<"\t\t\t姓名:

"<name<

cout<<"\t\t\t性别:

"<xingbie<

cout<<"\t\t\t班级:

"<nianji<

loop:

cout<<"\t\t\t家庭住址:

"<dizhi<

cout<<"\t\t\t请输入新住址:

";

cin>>p->dizhi;

system("cls");

cout<<"\t\t\t联系电话:

"<dianhua<

cout<<"\t\t\t请输入新联系电话:

";

cin>>p->dianhua;

system("cls");

cout<<"\t\t\t语文:

"<yuwen<

cout<<"\t\t\t请输入新成绩:

";

cin>>p->yuwen;

system("cls");

cout<<"\t\t\t数学:

"<shuxue<

cout<<"\t\t\t请输入新成绩:

";

cin>>p->shuxue;

system("cls");

cout<<"\t\t\t英语:

"<yingyu<

cout<<"\t\t\t请输入新成绩:

";

cin>>p->yingyu;

system("cls");

loop2:

cout<<"\t\t\t是否确认修改?

"<

cout<<"\t\t\t1、是;2、重新输入;3、返回"<

cout<<"\t\t\t";

cin>>r;

system("cls");

if(r==2)gotoloop;

elseif(r==3)return0;

elseif(r!

=1)

{

cout<<"选择错误,请重新选择!

"<

gotoloop2;

}

i=1;

break;

}

elsei=0;

}

if(i==0)

{

cout<<"\t\t\t输入错误!

"<

return0;

}

loop3:

cout<<"\t\t\t修改下一个?

"<

cout<<"\t\t\t1、是;2否"<

cout<<"\t\t\t";cin>>j;system("cls");

if(j==2)return0;

elseif(j!

=1)

{

cout<<"\t\t\t输入有误,请重新输入!

"<

gotoloop3;

}

}

}

intshanchu(stu*head)

{

stu*p,*q;

intxuehao;

while

(1)

{

inti=0,r=0;

cout<<"\t\t\t请输入要删除的学生学号:

";

cin>>xuehao;

system("cls");

q=head;

p=q->next;

while(p!

=NULL&&p->xuehao!

=xuehao)

{

q=p;

p=p->next;

}

cout<<"\t\t\t学号:

"<xuehao<

"<name<

"<xingbie<

"<nianji<

"<dizhi<

"<dianhua<

"<yuwen<

"<shuxue<

"<yingyu<

"<zongfen<

while

(1)

{

cout<<"\t\t\t是否确认删除?

"<

cout<<"\t\t\t1、是;2、否"<

cout<<"\t\t\t";

cin>>r;system("cls");

if(r==1)break;

elseif(r==2)return0;

else

cout<<"\t\t\t输入有误,请重新选择!

"<

}

if(p!

=NULL)

{

q->next=p->next;

cout<<"\t\t\t删除成功!

"<

}

else

cout<<"\t\t\t该生信息记录不存在!

";

loop:

cout<<"\t\t\t是否继续先删除?

"<

cout<<"\t\t\t1、是;2否"<

cout<<"\t\t\t";cin>>i;system("cls");

if(i==2)return0;

elseif(i!

=1)

{

cout<<"\t\t\t输入有误,请重新选择!

"<

gotoloop;

}

}

}

intliulan(stu*head)

{

stu*p;

inti=1;

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2