学生信息管理系统报告Word文件下载.docx
- 文档编号:3467678
- 上传时间:2023-05-01
- 格式:DOCX
- 页数:23
- 大小:20.49KB
学生信息管理系统报告Word文件下载.docx
《学生信息管理系统报告Word文件下载.docx》由会员分享,可在线阅读,更多相关《学生信息管理系统报告Word文件下载.docx(23页珍藏版)》请在冰点文库上搜索。
\h\z\uHYPERLINK\l"
_Toc327267625"
前言PAGEREF_Toc327267625\h1
HYPERLINK\l"
_Toc327267626"
一、系统概述PAGEREF_Toc327267626\h3
_Toc327267627"
1.1功能简介PAGEREF_Toc327267627\h3
_Toc327267628"
1.2设计思路PAGEREF_Toc327267628\h3
_Toc327267629"
第二章系统功能的分析和设计PAGEREF_Toc327267629\h4
_Toc327267630"
2.1初始录入功能PAGEREF_Toc327267630\h4
_Toc327267631"
2.2添加函数PAGEREF_Toc327267631\h4
_Toc327267632"
2.3删除函数PAGEREF_Toc327267632\h4
_Toc327267633"
2.4修改函数PAGEREF_Toc327267633\h4
_Toc327267634"
2.5查询函数PAGEREF_Toc327267634\h5
_Toc327267635"
2.5.1按学号查询PAGEREF_Toc327267635\h5
_Toc327267636"
2.5.2按姓名查询PAGEREF_Toc327267636\h5
_Toc327267637"
2.6显示函数PAGEREF_Toc327267637\h5
_Toc327267638"
2.7退出系统PAGEREF_Toc327267638\h5
_Toc327267639"
第三章调试及运行结果PAGEREF_Toc327267639\h6
_Toc327267640"
3.1主菜单PAGEREF_Toc327267640\h6
_Toc327267641"
3.2显示功能PAGEREF_Toc327267641\h6
_Toc327267642"
3.3增加功能PAGEREF_Toc327267642\h7
_Toc327267643"
3.4删除功能PAGEREF_Toc327267643\h7
_Toc327267644"
3.5修改功能PAGEREF_Toc327267644\h8
_Toc327267645"
3.6查询功能PAGEREF_Toc327267645\h8
_Toc327267646"
进入主菜单后选择1,进入查询功能,如图3-6:
PAGEREF_Toc327267646\h8
_Toc327267647"
第四章总结PAGEREF_Toc327267647\h9
_Toc327267648"
4.1遇到的问题及解决方法PAGEREF_Toc327267648\h9
_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<
iostream>
stdio.h>
stdlib.h>
string>
#include<
windows.h>
usingnamespacestd;
typedefstructstudents
{
intxuehao;
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);
xingbie,a.xingbie);
nianji,a.nianji);
dizhi,a.dizhi);
dianhua,a.dianhua);
yuwen=a.yuwen;
shuxue=a.shuxue;
yingyu=a.yingyu;
zongfen=a.yuwen+a.shuxue+a.yingyu;
q->
next=p;
q=p;
}while(!
feof(fp));
next=NULL;
fclose(fp);
returnhead;
}
voidchaxun(stu*head)
stu*q,*p;
intxuehao,r=0,i=0;
while
(1)
loop2:
cout<
<
"
\t\t\t请输入查询学生学号:
endl;
cout<
\t\t\t"
;
cin>
>
xuehao;
system("
cls"
p=q->
next;
for(p;
p!
=NULL;
p=p->
next)
if(p->
xuehao==xuehao)
\t\t\t学号:
xuehao<
endl<
\t\t\t姓名:
name<
\t\t\t性别:
xingbie<
\t\t\t年级:
nianji<
\t\t\t家庭住址:
dizhi<
\t\t\t联系电话:
dianhua<
\t\t\t语文:
yuwen<
\t\t\t数学:
shuxue<
\t\t\t英语:
yingyu<
\t\t\t总分:
zongfen<
i=1;
break;
elsei=0;
if(i==0)
\t\t\t该生信息不存在或输入错误,请重新输入!
gotoloop2;
loop:
\t\t\t下一步:
\t\t\t1、查询下一个;
2、结束"
r;
if(r==2)return;
if(r!
=1)
\t\t\t输入有误,请重新输入!
gotoloop;
intinsert(stu*head,stu*std)
stu*p,*q,*s;
s=(stu*)malloc(sizeof(stu));
p=head->
while(p!
=NULL)
next=s;
s->
xuehao=std->
strcpy(s->
name,std->
name);
xingbie,std->
xingbie);
nianji,std->
nianji);
dizhi,std->
dizhi);
dianhua,std->
dianhua);
yuwen=std->
yuwen;
shuxue=std->
shuxue;
yingyu=std->
yingyu;
zongfen=std->
yuwen+std->
shuxue+std->
return0;
intxiugai(stu*head)
intxuehao,r=0,j=0;
inti=0;
\t\t\t请输入要修改信息学生学号:
\t\t\t班级:
cout<
\t\t\t请输入新住址:
dizhi;
\t\t\t请输入新联系电话:
dianhua;
\t\t\t请输入新成绩:
\t\t\t是否确认修改?
\t\t\t1、是;
2、重新输入;
3、返回"
if(r==2)gotoloop;
elseif(r==3)return0;
elseif(r!
选择错误,请重新选择!
\t\t\t输入错误!
loop3:
\t\t\t修改下一个?
2否"
j;
if(j==2)return0;
elseif(j!
gotoloop3;
intshanchu(stu*head)
stu*p,*q;
inti=0,r=0;
\t\t\t请输入要删除的学生学号:
=NULL&
&
xuehao!
=xuehao)
\t\t\t是否确认删除?
2、否"
if(r==1)break;
elseif(r==2)return0;
else
\t\t\t输入有误,请重新选择!
if(p!
next=p->
\t\t\t删除成功!
\t\t\t该生信息记录不存在!
\t\t\t是否继续先删除?
i;
if(i==2)return0;
elseif(i!
intliulan(stu*head)
stu*p;
inti=1;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 信息管理 系统 报告
![提示](https://static.bingdoc.com/images/bang_tan.gif)