摘要由于学校规模进一步扩大,学生人数逐年上升,学生信息的管理也变得越来越复杂。为此,切实有效的把学生信息管理系统引入学校教务管理中,对于促进学校管理制度和提高学校教学质量有着显著意义。本系统采用B/S结构,ASP为开发语言,SQLServer2000为数据库来进行设计与开发。本论文,简要阐述了系统的开发背景与开发环境,对系统的构架进行分析,由此划分出各个模块,包括用户注册模块,用户登陆模块,个人管理模块,基本信息管理模块,特殊信息管理模块,毕业生信息管理模块,成绩管理模块,信息管理模块,退出系统模块。详细介绍了系统各个模块与功能的实现原理,最后总结开发阶段与测试阶段所遇到的问题与解决方法。关键词:ASP;SQLServer2000;B/S结构1引言管理信息系统就是我们常说的MIS(ManagementInformationSystem),在强调管理,强调信息的现代社会中它变得越来越普及。MIS是一门新的科学,它跨越了若干个领域,比如管理科学、系统科学、运筹学、统计学以及计算机科学。在这些学科的基础上,形成信息收集和加工的方法,从而形成一个纵横交织的系统。近年来Internet的飞速发展,Intranet技术得到了应用,为企业MIS提供了良好的支持环境。管理信息系统在企业的应用中存在三个要素,这就是人、计算机和数据。人是指企业领导者、管理人员、技术人员,以及MIS建设的领导机构和实施机构,他们必须有企业管理人员,尤其是企业领导的积极参与。计算机技术使MIS得以实施的主要技术。在这些技术中,软件开发是MIS开发的重点。第三个因素也不能忽视。企业的管理数据是MIS正常运行的基础。广义地说,各项管理控制是MIS的基础。是想要计算一台机床的成本,需要按时输入、每个零件以及每个螺钉螺母的费用,涉及企业的生产车间、采购、库房、工艺设计和财务等多个部门,必须有一套管理制度作保证。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。目前,学校学生管理是教务管理中的一个极为重要的环节,它是整个管理的核心和基础。由于学校规模进一步扩大,学生人数逐年上升,学生情况的管理也变得越来越复杂。面对如此繁杂的任务。如果让个人去管理文档,就会显得费时费力。尤其在管理成绩时,任务更加繁重,就成绩管理本身来说,它是一项任务繁重、时效性较强的系统工作,它不但涉及学生个人成绩查询,更涉及到各教师的工作效率和质量。近年来随着计算机的迅速发展,计算机已经在社会各个领域显示了它巨大的作用。毋庸置疑,切实有效地把计算机管理引入学校教务管理中,对于促进学校管理制度,提高学校教学质量与学水平有着显著意义。现在我国的一些院校中的信息管理效率还不是很高,这样已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。所以,学生信息系统的设计与开发也是一个时代必经的阶段。本次设计主要采用B/S结构,主要实用于各高校的各专业,从学生入学到毕业每个人在校的信息,以及成绩的管理。本系统主要有六大模块,基本信息管理、特殊信息管理、毕业生信息管理、信息管理(补助信息管理、勤工助学信息管理、奖励信息管理、处罚信息管理、异动情况信息管理)、成绩管理、个人管理。用WindonwsXP为操作平台,ASP作为脚本语言,采用SQLSever2000作为数据库,用户可以实现对数据的录入,修改,删除等操作。2系统开发背景随着科学技术的不断提高,目前,学校学生管理是教务管理中的一个极为重要的环节,它是整个管理的核心和基础。由于学校规模进一步扩大,学生人数逐年上升,学生情况的管理也变得越来越复杂。面对如此繁杂的任务。如果让个人去管理文档,就会显得费时费力。近年来随着计算机的迅速发展,计算机已经在社会各个领域显示了它巨大的作用。毋庸置疑,切实有效地把计算机管理引入学校教务管理中,对于促进学校管理制度,提高学校教学质量与学水平有着显著意义。由于上述原因,所以,学生管理系统的开发也是时代的一个必经阶段。本次设计主要采用B/S结构,从学生入学到毕业每个人在校的信息,以及成绩的管理。本系统主要分为六大模块,基本信息管理、特殊信息管理、毕业生信息管理、信息管理(补助信息管理、勤工助学信息管理、奖励信息管理、处罚信息管理、异动情况信息管理)、成绩管理、个人管理。用户可以对各种信息进行录入,修改,删除等操作。更方便各个专业老师对学生信息的系统化管理,提高公效率,以达到更合理化,方便化等要求。3系统开发环境3.1系统开发理论依据3.1.1ASP概述1.ASP基本含义和特点ASP是ActiveServerPage的缩写,意为“活动服务器网页”。ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。ASP的网页文件的格式是.asp,现在常用于各种动态网站中。ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或web应用程序。ASP网页可以包含HTML标记、普通文本、脚本命令以及COM组件等。利用ASP可以向网页中添加交互式内容(如在线表单),也可以创建使用HTML网页作为用户界面的web应用程序。与HTML相比,ASP网页具有以下特点:
(1)利用ASP可以实现突破静态网页的一些功能限制,实现动态网页技术;
(2)ASP文件是包含在HTML代码所组成的文件中的,易于修改和测试;

(3)服务器上的ASP解释程序会在服务器端制定ASP程序,并将结果以HTML格式传送到客户端浏览器上,因此使用各种浏览器都可以正常浏览ASP所产生的网页;
(4)ASP提供了一些内置对象,使用这些对象可以使服务器端脚本功能更强。例如可以从web浏览器中获取用户通过HTML表单提交的信息,并在脚本中对这些信息进行处理,然后向web浏览器发送信息;
(5)ASP可以使用服务器端ActiveX组建来执行各种各样的任务,例如存取数据库、发现那个Email或访问文件系统等。
(6)由于服务器是将ASP程序执行的结果以HTML格式传回客户端浏览器,因此使用者不会看到ASP所编写的原始程序代码,可放置ASP程序代码被窃取。
2.ASP的优点ASP的主要优点大概可以归纳如下:
(1)可以用VBscript或Jscript创建脚本,同时结合HTML语言就能够非常方便地完成网站的应用程序。对于VBscript和Jscript,使用哪种语言并不重要,Web服务器等同地处理这两种语言,并向用户的浏览器发送HTML格式化结果。
(2)因为ASP采用script语言(VBscript和Jscript)就可以轻松编写程序,因此这就大节省了网络设计人员又得重新学习一种新语言的时间。而且编写ASP无须手工compile编译或链接程序,可在服务器端直接执行,这无疑是更加方便了编写过程。
(3)使用普通的使用记事本之类的文本编辑器,即可进行编辑设计,如:Windows的记事本。不要用FontPage98或DreamWeaver2.0等主页制作软件修改,因为会破坏源代码的。建议使用CuteFTP携带的CuteHTML编辑器进行编辑设计。
(4)ASP是运行在服务器端,所以无须担心浏览器是否支持ASP所使用的编程语言,用户端只要使用可执行HTML码的浏览器,即可浏览ActiveServerPages所设计的网页内容。ASP在服务器端运行,当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。
(5)ASP能与任何ActiveXscripting语言相容。除了可用VBscript或Jscript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其他脚本语言,譬如Perl、Tcl等。脚本引擎是处理脚本程序的COM(ComponentObjectModel)组件。
(6)ActiveServerPages的程序代码隐藏,在客户端上仅可以看到由ASP输出的动态HTML文件。因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。转
大体上有两个部分把
1 存储信息的数据库部分
2 管理信息的程序部分
将学生信息,老师信息,通讯录的信息设计成数据库中的表
将各种信息之间的关系转化成程序逻辑
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<dos.h>
#include<string.h>
#define LEN sizeof(struct student)
#define FORMAT "%-8d%-15s%-12.1lf%-12.1lf%-12.1lf%-12.1lfn"
#define DATA stu[i].num,stu[i].name,stu[i].elec,stu[i].expe,stu[i].requ,stu[i].sum
struct student
{ int num
char name[15]
double elec
double expe
double requ
double sum
}
struct student stu[50]
void in()
void show()
void order()
void del()
void modify()
void menu()
void insert()
void total()
void search()
void main()
{ int n
menu()
scanf("%d",&n)
while(n)
{ switch(n)
{ case 1: in()break
case 2: search()break
case 3: del()break
case 4: modify()break
case 5: insert()break
case 6: order()break
case 7: total()break
case 8: show()break
default:break
}
getch()
menu()
scanf("%d",&n)
}
}
void in()
{ int i,m=0
char ch[2]
FILE *fp
if((fp=fopen("data.txt","a+"))==NULL)
{
printf("can not openn")
return
}
while(!feof(fp))
{
if(fread(&stu[m] ,LEN,1,fp)==1)
m++
}
fclose(fp)
if(m==0)
printf("No record!n")
else
{
system("cls")
show()
}
if((fp=fopen("data.txt","wb"))==NULL)
{
printf("can not openn")
return
}
for(i=0i<mi++)
fwrite(&stu[i] ,LEN,1,fp)
printf("please input(y/n):")
scanf("%s",ch)
while(strcmp(ch,"Y")==0||strcmp(ch,"y")==0)
{
printf("number:")
scanf("%d",&stu[m].num)
for(i=0i<mi++)
if(stu[i].num==stu[m].num)
{
printf("the number is existing,press any to continue!")
getch()
fclose(fp)
return
}
printf("name:")
scanf("%s",stu[m].name)
printf("elective:")
scanf("%lf",&stu[m].elec)
printf("experiment:")
scanf("%lf",&stu[m].expe)
printf("required course:")
scanf("%lf",&stu[m].requ)
stu[m].sum=stu[m].elec+stu[m].expe+stu[m].requ
if(fwrite(&stu[m],LEN,1,fp)!=1)
{
printf("can not save!")
getch()
}
else
{
printf("%s saved!n",stu[m].name)
m++
}
printf("continue?(y/n):")
scanf("%s",ch)
}
fclose(fp)
printf("OK!n")
}
void show()
{ FILE *fp
int i,m=0
fp=fopen("data.txt","rb")
while(!feof(fp))
{
if(fread(&stu[m] ,LEN,1,fp)==1)
m++
}
fclose(fp)
printf("number name elective experiment required sumtn")
for(i=0i<mi++)
{
printf(FORMAT,DATA)
}
}
void menu()
{
system("cls")
printf("nnnnn")
printf("tt|---------------------STUDENT-------------------|n")
printf("tt|t 0. exit |n")
printf("tt|t 1. input record |n")
printf("tt|t 2. search record |n")
printf("tt|t 3. delete record |n")
printf("tt|t 4. modify record |n")
printf("tt|t 5. insert record |n")
printf("tt|t 6. order |n")
printf("tt|t 7. number |n")
printf("tt|t 8. show |n")
printf("tt|-----------------------------------------------|nn")
printf("tttchoose(0-8):")
}
void order()
{ FILE *fp
struct student t
int i=0,j=0,m=0
if((fp=fopen("data.txt","r+"))==NULL)
{
printf("can not open!n")
return
}
while(!feof(fp))
if(fread(&stu[m] ,LEN,1,fp)==1)
m++
fclose(fp)
if(m==0)
{
printf("no record!n")
return
}
if((fp=fopen("data.txt","wb"))==NULL)
{
printf("can not openn")
return}
for(i=0i<m-1i++)
for(j=i+1j<mj++)
if(stu[i].sum<stu[j].sum)
{ t=stu[i]stu[i]=stu[j]stu[j]=t}
if((fp=fopen("data.txt","wb"))==NULL)
{ printf("can not openn")return}
for(i=0i<mi++)
if(fwrite(&stu[i] ,LEN,1,fp)!=1)
{
printf("%s can not save!n")
getch()
}
fclose(fp)
printf("save successfullyn")
}
void del()
{FILE *fp
int snum,i,j,m=0
char ch[2]
if((fp=fopen("data.txt","r+"))==NULL)
{ printf("can not openn")return}
while(!feof(fp)) if(fread(&stu[m],LEN,1,fp)==1) m++
fclose(fp)
if(m==0)
{
printf("no record!n")
return
}
printf("please input the number:")
scanf("%d",&snum)
for(i=0i<mi++)
if(snum==stu[i].num)
break
printf("find the student,delete?(y/n)")
scanf("%s",ch)
if(strcmp(ch,"Y")==0||strcmp(ch,"y")==0)
for(j=ij<mj++)
stu[j]=stu[j+1]
m--
if((fp=fopen("data.txt","wb"))==NULL)
{ printf("can not openn")return}
for(j=0j<mj++)
if(fwrite(&stu[j] ,LEN,1,fp)!=1)
{ printf("can not save!n")
getch()}
fclose(fp)
printf("delete successfully!n")
}
void search()
{ FILE *fp
int snum,i,m=0
char ch[2]
if((fp=fopen("data.txt","rb"))==NULL)
{ printf("can not openn")return}
while(!feof(fp)) if(fread(&stu[m],LEN,1,fp)==1) m++
fclose(fp)
if(m==0) {printf("no record!n")return}
printf("please input the number:")
scanf("%d",&snum)
for(i=0i<mi++)
if(snum==stu[i].num)
{ printf("find the student,show?(y/n)")
scanf("%s",ch)
if(strcmp(ch,"Y")==0||strcmp(ch,"y")==0)
{
printf("number name elective experiment required sumtn")
printf(FORMAT,DATA)
break
}
}
if(i==m) printf("can not find the student!n")
}
void modify()
{ FILE *fp
int i,j,m=0,snum
if((fp=fopen("data.txt","r+"))==NULL)
{ printf("can not openn")return}
while(!feof(fp))
if(fread(&stu[m],LEN,1,fp)==1) m++
if(m==0) {printf("no record!n")
fclose(fp)
return
}
show()
printf("please input the number of the student which do you want to modify!n")
printf("modify number:")
scanf("%d",&snum)
for(i=0i<mi++)
if(snum==stu[i].num)
break
printf("find the student!you can modify!n")
printf("name:")
scanf("%s",stu[i].name)
printf("elective:")
scanf("%lf",&stu[i].elec)
printf("experiment:")
scanf("%lf",&stu[i].expe)
printf("required course:")
scanf("%lf",&stu[i].requ)
printf("modify successful!")
stu[i].sum=stu[i].elec+stu[i].expe+stu[i].requ
if((fp=fopen("data.txt","wb"))==NULL)
{ printf("can not openn")return}
for(j=0j<mj++)
if(fwrite(&stu[j] ,LEN,1,fp)!=1)
{ printf("can not save!") getch() }
fclose(fp)
}
void insert()
{ FILE *fp
int i,j,k,m=0,snum
if((fp=fopen("data.txt","r+"))==NULL)
{ printf("can not openn")return}
while(!feof(fp))
if(fread(&stu[m],LEN,1,fp)==1) m++
if(m==0) {printf("no record!n")
fclose(fp)
return
}
printf("please input position where do you want to insert!(input the number)n")
scanf("%d",&snum)
for(i=0i<mi++)
if(snum==stu[i].num)
break
for(j=m-1j>ij--)
stu[j+1]=stu[j]
printf("now please input the new information.n")
printf("number:")
scanf("%d",&stu[i+1].num)
for(k=0k<mk++)
if(stu[k].num==stu[i+1].num)
{
printf("the number is existing,press any to continue!")
getch()
fclose(fp)
return
}
printf("name:")
scanf("%s",stu[i+1].name)
printf("elective:")
scanf("%lf",&stu[i+1].elec)
printf("experiment:")
scanf("%lf",&stu[i+1].expe)
printf("required course:")
scanf("%lf",&stu[i+1].requ)
stu[i+1].sum=stu[i+1].elec+stu[i+1].expe+stu[i+1].requ
if((fp=fopen("data.txt","wb"))==NULL)
{ printf("can not openn")return}
for(k=0k<=mk++)
if(fwrite(&stu[k] ,LEN,1,fp)!=1)
{ printf("can not save!") getch() }
fclose(fp)
}
void total()
{ FILE *fp
int m=0
if((fp=fopen("data.txt","r+"))==NULL)
{ printf("can not openn")return}
while(!feof(fp))
if(fread(&stu[m],LEN,1,fp)==1)
m++
if(m==0) {printf("no record!n")fclose(fp)return}
printf("the class are %d students!n",m)
fclose(fp)
}
以上就是关于写一份学生管理系统的系统运行环境配置与程序安装文档全部的内容,如果了解更多相关内容,可以关注,你们的支持是我们更新的动力!
版权声明:我们致力于保护作者版权,注重分享,被刊用文章【教务管理系统开发文档】因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!;
工作时间:8:00-18:00
客服电话
电子邮件
beimuxi@protonmail.com
扫码二维码
获取最新动态
