文档库 最新最全的文档下载
当前位置:文档库 › JSP学生信息管理系统(报告)

JSP学生信息管理系统(报告)

JSP学生信息管理系统(报告)
JSP学生信息管理系统(报告)

重庆科技学院《Web应用程序设计》课程设计报告

摘要

随着社会信息化程序不断提高,越来越多的软件开发人员需要开发Web应用程序。目前网络编程主要有两大技术体系:基于JavaEE的网络开发和基于.NET的网络开发。JavaEE技术以其开放性,灵活性的技术成熟度,赢得了广大编程爱好者的青睐,并且在目前企业级信息系统开发领域也占领了很大的市场,取得了许多成功的案例。

此次课程设计我使用JavaEE编程技术,利用MyEclipse开发工具设计了一个学生信息管理系统。用户的身份分为学生和管理员,用户登陆系统时系统根据用户身份提供相应的功能。学生的功能包括:学生信息的查询,个人信息的修改,密码修改和留言。当用户登陆时若有新留言,系统提示用户查看新留言。管理员在此基础上还有添加学生信息和删除学生信息的功能,修改的权限也大于学生。

本系统采用JSP 和Servlet 结合,JSP和JavaBean结合的技术。通过JDBC连接到数据库,实现数据库的操作。

关键词:JavaEE编程技术 Servlet JavaBean 数据库

目录

一、需求分析 (1)

1.1功能需求 (1)

1.2环境需求 (1)

二、概要设计 (2)

2.1系统总体结构 (2)

2.2开发环境的配置 (2)

三、详细设计 (3)

3.1数据库设计 (3)

3.1.1数据字典 (3)

3.1.2逻辑设计 (4)

3.1.3物理设计 (4)

3.1.4数据库实施 (5)

3.1.5 JAVAEE数据库连接 (6)

3.2功能设计 (7)

3.2.1登陆功能 (7)

3.2.2查询功能 (9)

3.2.3添加功能 (11)

3.2.4 删除功能 (13)

3.2.5修改功能 (15)

3.2.6留言功能 (17)

四、调试与测试 (20)

4.1学生登陆测试 (20)

4.2管理员登陆测试 (22)

五、总结 (25)

参考文献: (26)

致谢 (27)

一、需求分析

1.1功能需求

前台功能:

1)学生信息浏览功能:学生和管理员都可进行查询和浏览,学生可以按学号、姓名查询和查询全部学生信息,管理员可以按班级,专业查询。查询时先要选择查询方式,再输入查询的关键词。查询全部学生信息时不需要输入关键词。

2)学生个人信息维护功能:学生能对自己部分信息(年龄、email、电话)的修改功能,而部分信息(学号、姓名、性别、专业、班级)不能做修改。修改时先读取个人信息到文本框中,学生可以在文本框中对个人信息修改。不能修改的信息对应的文本框为只读。修改完成后保存即可。

3)留言版:学生可以有针对性的向其他同学进行信息留言,留言时需要输入收信人的学号和内容即可,留言时获取系统时间,留言人为登陆时系统记录的学号对应的姓名。对方登陆后,若有新留言可以自动提示,并设有查询新留言的超链接。

后台功能:

1) 管理员可按照班级对学生个人信息进行管理,班级信息管理包括按班级查询学生信息,修改班级信息,删除班级信息,添加班级信息。

2)管理员可对学生基本信息进行录入,查询、添加、修改、删除。管理员查询是在学生查询的基础上新增加按班级,按专业对学生进行查询。添加学生信息时只需将要添加的学生信息输入对应的文本框中。修改学生信息时先查询出修改学生的信息查询显示在文本框中,修改时只需要将信息输入到对应的文本框中,不能修改的信息对应的文本框设为为只读,管理员可以修改除了学号以外的其它信息。删除时先查询出要删除的学生信息,再确认删除。

3)管理员可动态添加班级信息,对班级信息进行管理和设置

1.2环境需求

根据系统的基本功能需求,以及客户的信息系统环境,计划采用浏览器/服务器模式来

构建管理系统,这样方便维护和使用。同时,根据客户对技术的具体建议,计划采用 J2EE 技术来开发。具体的软硬件环境要求如下:

(1)硬件环境:采用普通办公用个人计算机作为服务器即可。

(2)操作系统:可以采用 Windows XP 以上系统。

(3)数据库系统:采用Mysql数据库

(4)Web服务器:采用Tomcat5以上系统。

(5)Java运行环境:采用 JRE 1.5以上中文版本。

(6)客户端:采用浏览器工具即可。

二、概要设计

2.1系统总体结构

按照系统的需求要求,可以把系统功能进行分解,以便按照每个功能模块的要求分别实现对应的功能。系统总体结构如下图2.1所示:

图2.1系统结构图

用户的身份分为学生和管理员,用户登陆系统时系统根据用户身份提供相应的功能。系统提供给学生的查询方式有按学号查询、按姓名查询和查询全部学生信息;学生可以修改部分个人信息,对于像学号、班级、专业这样的信息学生不能作修改;学生可以给任何用户留言,留言时系统会获取留言人和留言时间。系统提供给管理员的查询方式在学生的基础上增加了按班级查询、按专业查询和查询管理员信息;管理员可以向学生库中添加学生信息和从学生库中删除学生信息;管理员可以修改除学号以外的所有学生信息;管理员在留言时系统会在获取到的管理员姓名前加入“管理员”的字样,以提醒收信人,此信息是来自于管理员。

2.2开发环境的配置

由于采用了J2EE模型2的方式,因此只要安装好需求分析中提出的软件、硬件环境要求就可以了。另外,为了便于开发,还要安装一套开发工具,推荐使用 Eclipse或者MyEclipse,其中提供了方便的编程界面。

本系统没有其他的插件或者 API,当安装好这些软件后,就可以进行开发了。其中要注意的就是版本一致性问题,强烈建议采用最新版本的开发工具。

本系统采用了Mysql数据库系统,建议安装 5.0以上版本。最新版本可以到网站(https://www.wendangku.net/doc/e412511058.html,)上去下载。

三、详细设计

3.1数据库设计

3.1.1数据字典

本系统中所用到的数据库数据信息如下表如示:

3.1.2逻辑设计

根据系统需求和设计的规划,可以建立一个数据库,并在其中建立几个表格,分别用来存储各个功能模块的数据信息。E-R图如图3.1所示

图3.1E-R图

3.1.3物理设计

E-R图中实体与实体之间的关系,可以进一步转化为相应的数据模型,目前很多的DBMS 只支持关系、网状、层次三种数据模型,尤其是关系模型,以其优越的性能赢得了很大的市场。对某一种数据模型,各个机器又有不同的限制。

图3.2物理模型

3.1.4数据库实施

按上述步骤建立数据库,如图3.3所示,表中学生表属性如图3.4所示,管理员表录图3.5所示,留言表如图3.6所示。

图3.3数据库表

图3.4学生表属性

图3.5管理员表属性

图3.6留言表属性

3.1.5 JAVAEE数据库连接

连接类如下,连接到本地IP下的mysql数据库的student数据库中,连接身份为“root”连接密码为“413622”

public class DB {

public static Connection getConn() {

Connection conn = null;

try {

Class.forName("org.gjt.mm.mysql.Driver");

conn=java.sql.DriverManager.getConnection("jdbc:mysql://localhost:3306/stude nt", "root", "413622");

} catch (ClassNotFoundException e) {

e.printStackTrace();

}catch (SQLException e) {

e.printStackTrace();

}

return conn;

}

public static Statement createStmt(Connection conn) {

Statement stmt = null;

try {

stmt = conn.createStatement();

} catch (SQLException e) {

e.printStackTrace();

}

return stmt;

}

public static ResultSet executeQuery(Statement stmt, String sql) { ResultSet rs = null;

try {

rs = stmt.executeQuery(sql);

} catch (SQLException e) {

e.printStackTrace();

}

return rs;

}

public static ResultSet executeQuery(PreparedStatement preparedstmt)

{

ResultSet rs = null;

try {

rs = preparedstmt.executeQuery();

} catch (SQLException e) {

e.printStackTrace();

}

return rs;

}

public static PreparedStatement prepareStmt(Connection conn, String sql) { PreparedStatement pstmt = null;

try {

pstmt = (PreparedStatement) conn.prepareStatement(sql);

}catch (SQLException e) {

e.printStackTrace();

}

return pstmt;

}

public static void close(Connection conn) {

if (conn != null) {

try {

conn.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

public static void close(Statement stmt) {

if (stmt != null) {

try {

stmt.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

public static void close(ResultSet rs) {

if (rs != null) {

try {

rs.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

}否

3.2功能设计

3.2.1登陆功能

先获取主界面文本框中输入的用户名、密码和登陆方式。登陆身份若是管理员则

administrator.checkManUser(conn, username,password)函数对比数据库中管理员表的内容,登陆成功则跳到管理员主页面。若是学生则利用student.checkStuUser(conn, username,password)函数对比数据库中学生表中的内容,登陆成功则跳到学生主页面,程序流程如图3.7所示

图3.7登陆流程图

登陆功能关键代码如下:

username=request.getParameter("username");

password=request.getParameter("password");

radio = request.getParameter("radio");

if(radio.equals("1"))

{

try {

if (administrator.checkStuUser(conn, username,password)) {

rd =

this.getServletContext().getRequestDispatcher("/StuMain.jsp");

rd.forward(request,response);

}else {

rd=this.getServletContext().getRequestDispatcher("/login.jsp");

rd.forward(request,response);

}

} catch (Exception e) {

rd = this.getServletContext().getRequestDispatcher("/login.jsp");

rd.forward(request,response);

}

}else

{

try {

if (student.checkManUser(conn, username,password)) { rd=this.getServletContext().getRequestDispatcher("/AdmMain.jsp");

rd.forward(request,response);

}else {

rd =

this.getServletContext().getRequestDispatcher("/login.jsp");

rd.forward(request,response);

}

} catch (Exception e) {

rd = this.getServletContext().getRequestDispatcher("/login.jsp");

rd.forward(request,response); }

}

checkManUser(conn, username,passwo)函数与checkStuUser(conn, username,password)类似,下面以管理员登陆为例说明:当用户名和密码与数据库中相同时返回值为TURE,否则返回值为FALSE

public static boolean checkManUser(Connection conn, String username,String password) throws Exception {

String strSql;

Statement stmt;

ResultSet rs;

strSql = "select * from administrator where number='" + username

+ "' and password='" + password + "'";

stmt = DB.createStmt(conn);

rs = DB.executeQuery(stmt, strSql);

if (rs.next()) {

return true;

} else {

return false;

}

}

3.2.2查询功能

先获取下拉框的值,赋值给S。S的作用是记录查询方式用的,学生查询方式有学号、姓名和全部学生信息。再获取输入的关键词,赋值给keyword,keyword记录查询关键词。再利用前面提到的student.findstudent(conn, s, keyword)函数处理。查询成功将查询到的信息显示出来,查询失败则显示提示信息。查询程序流程如图3.8所示。

图3.8查询流程图

程序关键代码如下:

java.sql.Connection conn=null;

java.sql.ResultSet rs=null;

conn = DB.getConn();

String s = request.getParameter("combobox1");

String keyword = (String)request.getParameter("search");

try {

rs = student.findstudent(conn, s, keyword);

}catch(java.sql.SQLException e){

out.println(e.toString());

}finally{

if(conn!=null) conn.close();

}

findstudent(conn, s, keyword)函数位于student类中,s的值为“1”为按学号查询,“2”为按姓名查询,“3”为查询全部学生信息,“4”为按班级查询,“5”为按专业查询,“6”为查询管理员信息。学生查询权限为1、2、3,管理员可以是1、2、3、4、5、6关键代码如下:

public static ResultSet findstudent(Connection conn,String s,String keyword) throws SQLException

{

ResultSet rs = null;

java.sql.PreparedStatement preparedStmt = null;

if(s.equals("1"))

{

preparedStmt = conn.prepareStatement("select * from studentinfor where sno = '"+keyword+"'");

}

else if(s.equals("2"))

{

preparedStmt = conn.prepareStatement("select * from studentinfor where sname = '"+keyword+"'");

}

else if(s.equals("3"))

{

preparedStmt = conn.prepareStatement("select * from studentinfor");

}

else if(s.equals("4"))

{

preparedStmt = conn.prepareStatement("select * from studentinfor where classname = '"+keyword+"'");

}

else if(s.equals("5"))

{

preparedStmt = conn.prepareStatement("select * from studentinfor where department = '"+keyword+"'");

}

else{

preparedStmt = conn.prepareStatement("select * from administrator");

}

rs = preparedStmt.executeQuery();

return rs;

}

3.2.3添加功能

先获取文本框的值,再将获取到的值为学生的实例stu的属性赋值,再利用student.Insertstu(conn,stu)将信息添加到数据库中去。获取学生实例的属性写入数据库属性。添加成功则产生成功提示信息,再返回添中页面,失败则产生失败信息,再返回添加页面,添加流程如图3.9所示

图3.9添加学生信息流程图

添加学生信息的关键代码如下:

String sno = request.getParameter("snoa");

String sname = request.getParameter("snamea");

String ssex = request.getParameter("ssexa");

int sage = Integer.parseInt(request.getParameter("sagea"));

String classname = request.getParameter("classnamea");

String department = request.getParameter("departmenta");

String email = request.getParameter("emaila");

String phone = request.getParameter("phonea");

student stu = new student();

stu.setSno(sno);

stu.setSname(sname);

stu.setSsex(ssex);

stu.setSage(sage);

stu.setClassname(classname);

stu.setDepartment(department);

stu.setEmail(email);

stu.setPhone(phone);

Connection conn = DB.getConn();

try {

student.InsertStu(conn,stu);

out.println("添加成功返回");

} catch (Exception e) {

e.printStackTrace();

out.println("添加失败返回");

} finally {

DB.close(conn);

}

InsertStu(conn,stu)函数位于student类中,此函数先获取学生实例stu的属性,再将其属性写入相应的数据库字段中。添加信息权限仅限管理员,关键代码如下:

public static boolean InsertStu(Connection conn, student stu)

throws Exception {

PreparedStatement stmt = null;

String s = "123456";

String a=stu.getSno();

String b=stu.getSname();

String c=stu.getSsex();

int d= stu.getSage();

String e= stu.getClassname();

String f=stu.getDepartment();

String g= stu.getEmail();

String h= stu.getPhone();

String strSql = "INSERT INTO

studentinfor(sno,sname,ssex,sage,classname,department,email,phone,password) VALUES('"+a+"','"+b+"','"+c+"','"+d+"','"+e+"','"+f+"','"+g+"','"+h+"','"+s+"'); stmt = conn.prepareStatement(strSql);

try {

stmt.executeUpdate();

} catch (Exception e1) {

System.out.println("添加失败!");

return false;

} finally {

DB.close(stmt);

}

return true;

}

3.2.4 删除功能

删除时,选择删除方式,可以按学号删除和按班级删除,根据选择方式和关键词,先通过前面提到的student.findstudent(conn, s, keyword)函数将要删除学生的信息查询显示出来,“s”为删除方式,也为查询方式,“s”的值可以是“1”按学号删除,“4”按班级删除,“keyword”为查询关键字。用户点击“确认删除”,则删除当前学生信息,删除流程如图3.10

图3.10删除学生信息流程图

删除流程关键代码如下:

String s = (String)session.getAttribute("s1");

String keyword = (String)session.getAttribute("keyword1");

try {

student.DelStu(conn,s,keyword);

out.println("删除成功返回");

} catch (Exception e) {

e.printStackTrace();

out.println("删除失败返回");

} finally {

DB.close(conn);

}

DelStu(conn,s,keyword)函数位于student类中,此函数作用是将学号或班级为keyword 的学生信息删除。关键代码如下如示

public static boolean DelStu(Connection conn, String s,String keyword) throws Exception {

PreparedStatement stmt = null;

i f(s.equals("1"))

{

String strSql = "DELETE FROM studentinfor where sno = ?";

stmt = conn.prepareStatement(strSql);

stmt.setString(1, keyword);

}else

{

String strSql = "DELETE FROM studentinfor where classname = ?";

stmt = conn.prepareStatement(strSql);

stmt.setString(1, keyword);

}

try {

stmt.executeUpdate();

} catch (Exception e1) {

System.out.println("删除成功!");

return false;

} finally {

DB.close(stmt);

}

return true;

}

3.2.5修改功能

修改时,先输入要修改学生的学号,赋值为keyword,再通过student.findstudent(conn, "1", keyword)函数将此学生的信息查询出来显示在页面上对应的文本框中。用户修改时将修改信息写入对应的文本框中,不能修改的信息对应的文本框为只读。后台先获取文本框的值,再将获取到的值为学生实例stu的属性赋值,再利用前面提到的student.UpdateStu(conn,stu)修改数据库中内容去。修改成功则产生成功提示信息,再返回修改页面,修改失败则产生失败提示信息,再返回修改页面。修改流程图如图3.11所示。

图3.11修改学生信息流程图

修改流程关键代码如下:

java.sql.Connection conn = null;

java.sql.ResultSet rs = null;

conn = DB.getConn();

sno = request.getParameter("snou");

sname = request.getParameter("snameu");

ssex = request.getParameter("ssexu");

sage = Integer.parseInt(request.getParameter("sageu")); classname = request.getParameter("classnameu"); department = request.getParameter("departmentu");

email = request.getParameter("emailu");

phone = request.getParameter("phoneu");

student stu = new student();

stu.setSno(sno);

stu.setSname(sname);

stu.setSsex(ssex);

stu.setSage(sage);

stu.setClassname(classname);

stu.setDepartment(department);

stu.setEmail(email);

stu.setPhone(phone);

try {

student.UpdateStu(conn, stu);

out.println("添加成功返回");

} catch (Exception e) {

e.printStackTrace();

out.println("添加失败返回");

}finally{

DB.close(conn);

DB.close(rs);

}

UpdateStu(conn, stu)类位于student类中.此函数先获取学生实stu的属性,再根据获取到的值修改当前学生的数据相应数据库字段,其关键代码如下:

public static boolean UpdateStu(Connection conn, student stu)

throws Exception {

PreparedStatement stmt = null;

String b=stu.getSname();

String c=stu.getSsex();

int d = stu.getSage();

String e=stu.getEmail();

String f=stu.getPhone();

String g=stu.getClassname();

String h=stu.getDepartment();

String strSql = "UPDATE studentinfor SET sname='"+b+"',ssex='"+c+"', sage ='"+d+"',email = '"+e+"',phone = '"+f+"',classname='"+g+"',department='"+h+"' WHERE sno = ?";

stmt = conn.prepareStatement(strSql);

stmt.setString(1, stu.getSno());

try {

stmt.executeUpdate();

} catch (Exception e1) {

System.out.println("修改失败!");

return false;

} finally {

DB.close(stmt);

}

return true;

}

3.2.6留言功能

先获取文本框中输入信息,消息编号是利用前面提到的massage.getNum(conn)获取消息库中最大留言编号的值加上1作为新留言编号,再实例化一个消息类mas,将获取到的信息

为mas的属性赋值,再获取留言实例的属性,最后利用前面提到的Massage.InsertMas (conn,mas)函数将新留言添加到数据库,添加成成则产生成功提示信息,再返回留言界面,失败则产生失败提示信息,再返回留言界面,留言流程如图3.12

图3.12留言流程图

留言流程的关键代码如下如示:

java.sql.ResultSet rs = null;

int numberm=0;

String sno = request.getParameter("snoam");

String massageinfor = request.getParameter("massageam");

String date= request.getParameter("dataam");

String givename = request.getParameter("nameag");

String read ="";

massage mas = new massage();

mas.setSno(sno);

mas.setMassageinfor(massageinfor);

mas.setDate(date);

mas.setGivename(givename);

mas.setRead(read);

Connection conn = DB.getConn();

try{

学生信息管理系统需求分析报告模板

学生信息管理系统需求分析报告

目录 1.序言 (3) 2.项目简介 (3) 2.1.系统标识 (3) 2.2.系统功能 (3) 2.3.用户选择 (3) 2.4.系统功能 (3) 2.4.1 (4) 2.4.2 (4) 2.4.3. (4) 2.4.4. (4) 2.4.5 (4) 2.4.6 (4) 2.4.7 (4) 2.4.8 (4) 3.模块划分 (4) 3.1.登入模块 (4) 3.2.学生信息管理 (4) 3.3.课程管理 (4) 3.4.成绩管理 (4) 3.5.管理员管理 (5) 3.6.退出 (5) 4.模块图 (5) 5.流程图 (8) 6.性能要求 (8)

1.序言 随着学校的规模不断过大,学生数量急剧增加,有关学生的各种信息量也成倍增加。面对庞大的信息量需要有学生信息管理系统来提高学生管理工作的效率。通过这样的系统可以做到信息的规范化管理、科学性统计和快速查询、修改、增加、删除等,从而减少管理方面的工作量。 本系统主要应用于学校学生信息管理,总体任务是实现学生信息关系的系统化、规范化和自动化,其主要任务是计算学生各种信息进行日常管理,如查询、修改、增加、删除,另外还考虑到了学生选课、针对这些要求设计了学生信息管理系统。 2.项目简介 2.1.系统标识 系统名称:学生信息管理系统 2.2.系统功能 本系统主要功能是实现学校学生的信息管理、课程管理、成绩管理、学籍管理以及使用该系统的用户管理。 2.3.用户选择 本系统面向的用户有:学校的系统人员、管理人员、教师、学生。所以对计算机的人性化和易用性比较高,应用于学校学生信息管理,总体任务是实现学生信息关系的系统化、规范化和自动化,其主要任务是计算学生各种信息进行日常管理,如查询、修改、增加、删除,另外还考虑到了学生选课,做到看界面简单易懂,容易操作,提高了学校管理效率以及提升了学生信息的安全性和完整性。 2.4.系统功能 本系统主要应用于学生学籍管理、信息查询、教务信息维护和学生选课、学生奖惩安排几部分,又因为用户的不同,例如学生、教师、系统管理员的身份不

jsp课程设计—学生管理系统

Jsp课程设计 题目:学生管理系统 学号:1041011109 姓名:何琴 指导老师:姜俊坡

目录 一.概述 (3) 二.系统的结构分析与设计 (3) 2.1 整体设计 (3) 2.2 模块设计 (4) 三.系统的实现 (5) 3.1 登录界面 (5) 3.2 学生信息界面 (6) 3.3 学生信息查询,编辑,新增界面 (7) 3.4 连接数据库 (11) 四.总结................................................................................................. .16

一概述 一直以来学生的成绩管理是学校工作中的一项重要内容,我国的大中专院校的学生成绩管理水平普遍不高。随着办学规模的扩大和招生人数的增加,建立一个成绩维护系统是非常必要的。普通的成绩管理已不能适应时代的发展,因为它浪费了许多的人力和物力。在当今信息时代这种传统的管理方法必然被以计算机为基础的信息管理系统所代替。为了提高成绩管理的效率,我选择了学生成绩管理系统作为课程设计的课题。 本系统在大多数成绩管理系统的基础上,主要增加了教师对成绩的操作,教师改完试卷后不用在往学院的教务处办公室报送成绩,可以直接的把成绩上传到网络上,学生也可以方便快速的查询到自己的成绩,考试后教务管理人员也不必总呆在学院的办公室,他们都不受时间,位置,空间的限制,只要有上网的条件,在家里就可 二系统的结构分析与设计 2.1 整体结构设计 基于系统的使用对象是管理员,系统根据功能需要分为三个模块,即学生基本信息管理、新增学生信息管理和查询学生信息管理。采用B/S模式,jsp+SQL JavaBean 的技术形式实现。 2.1.1 用户角色设计及权限分配 管理员:拥有管理系统所有功能的权限,同时负责系统的用户的增删,服务功能的起停,数据的备份、还原等维护操作; 2.1.2 系统模块设计 学生信息管理系统包括三个基本模块:学生基本信息管理、新增学生信息管理和查询学生信息管理。三个模块管理功能不一,同时相互之间又有联系。 图1 2.1.3 系统运行模式设计 系统采用B/S(Browser/Server)模式,使管理更加方便和简单,B/S结构中各个客户

C++实现:简单的学生信息管理系统

<< endl << endl; cout << "按下1:进入学生信息管理系统." << endl; cout << "按下0:退出." << endl; cout << "-----------------------------------------------------" << endl<> flagOperateInformation; (); cout << endl; if (flagOperateInformation) EditMenu(); } } << endl; cout << "按下2:修改学生信息." << endl; cout << "按下3:删除学生信息." << endl; cout << "按下4:显示学生信息." << endl; cout << "按下5:按学号升序排序" << endl; cout << "按下6:读入已有信息(暂时没实现)" << endl; cout << "按下7:将信息输出(暂时没实现)" << endl; cout << "按下8:显示系统内所有学生的信息" << endl; cout << "按下0:返回上一级." << endl; cout << "--------------------------------------------" << endl << endl; cin >> flagContinueOperation; (); cout << endl; switch (flagContinueOperation) { case 1:AddStudentPersonalInformation(1); break; case 2:ModifyStudentInformation(); break; case 3:DeleteStudentInformation(); break; case 4:DisplayStudentInformation(); break; case 5:RankByID(); break; case 6:cout << "功能暂未实现" << endl; break; case 7:cout << "功能暂未实现" << endl; break; case 8:DisplayAllStudentInformation(); break; case 0:break; } } } tudent_WritePersonalInformation(iD,name,address,phone); cout << "基本信息输入成功!" << endl << "------------------------------" << endl; } tudent_WriteMaPhEgGrade(mathGrade, physicsGrade, englishGrade); cout << "学习成绩输入成功!" << endl

web WEB JSP实验报告书

实验1 网页程序设计-JavaScript 一、实验目的 1. 掌握JavaScript技术,基本掌握JavaScript的开发技巧; 2. 利用文本编辑器建立JavaScript脚本语言进行简单编程。 二、实验要求: 1. 根据以下实验内容书写实验准备报告。 2. 独立完成实验。 三、实验内容 1.显示一个动态的时钟 在文本编辑器“记事本”中输入如下代码程序,请仔细阅读下列程序语句,理解每条语句的作用。源程序清单如下:

现在是北京时间:
运行结果:

C语言学生信息管理系统报告

销售信息统计管理系统

一.任务描述 某公司有4个销售员,负责销售5种产品。每个销售员都将当日销售的每种产品各写一张便条提交给公司。每张便条内容有: 1、销售员的编号 2、销售产品的代号产品 3、产品销售量 根据需求,此系统提供以下功能: 1、以菜单界面呈现。 2、信息录入功能。 3、信息查询功能。(包括查询某销售员的各产品销售量,某种产品的销售总量,某销售员的总销售额) 4、销量排序功能。 5、生成统计报表功能。 本系统采用结构体数组以及数据文件的技术,将输入的数据用结构体数组保存,并提供文件的保存与读取。在程序中要进行统计工作,所以提供显示、排序等操作,另外应提供键盘式选择菜单实现功能选择 本程序使用C语言。 此程序在vc++6.0上调试通过。 二.功能实现设计 1.总体设计 根据上面的分析,将这个程序分为四大模块。——1.销售信息录入。2.查询信息3.文件的保存。4.文件的读取 查询系统包括1.各个销售员销售额。2.销售总额以及排序。3各产品销售总额及热度。4.总信息统计生成报表。

2.流程图 3.详细设计 ①【数据结构】typedef struct { int name; int a1; int a2; int a3; int a4;

int a5; } SYS;/*定义数组*/ ②【功能函数声明】 int menu();/*选择菜单函数声明*/ int menu_1();/*子菜单函数声明*/ int enter(SYS t[]);/*进入函数声明*/ void salor(SYS t[],int n);/*声明函数*/ int sum(SYS t[],int n,int m);/*统计函数声明*/ void list1(SYS t[],int n);/*菜单1函数声明*/ void list2(SYS t[],int n);/*菜单2函数声明*/ void list3(SYS t[],int n);/*菜单3函数声明*/ void save(SYS t[],int n);/*保存文件函数声明*/ int load(SYS t[]);/*读取函数声明*/ SYS ste[100]; int len;/*全局变量定义*/ ③【主函数】 void main() { system("cls"); for( ; ; ) { switch(menu())/*根据用户的选择判断该调用哪个功能函数*/ { case 1:len=enter(ste);break; case 2:menu_1();break;

学生信息管理系统JSP版(Eclipse)

学生信息管理系统JSP版(Eclipse)1、新建new->Dynamic Web Project->名字为StudentJSP。 2、准备工作 1)编写JSP测试文件,名称为hello.jsp 修改hello.jsp的charset为UTF-8 加入代码:Hello!

代码: <%@page language="java"contentType="text/html; charset=UTF-8" pageEncoding=" UTF-8"%> Insert title here Hello! 附:修改默认字符集步骤: Windows->Preference->Web->JSPfiles->将Encoding改为UTF-8

2)右击项目->Properties->Resurce->修改字符集为UTF-8.

3)右击项目->Properties->Java Build Path改为如图(需先在WEB-INF下新建classes)

4)将MySQL中一个jar包复制到/WEB-INF/lib下,如图: 3、在/WebContent下new一个JSPfile,名字为display0.jsp 代码如下: <%@page language="java"contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.sql.*"%> //(注意要引入sql的包) Insert title here <% String connStr = "jdbc:mysql://localhost:3306/yStudent?characterEncoding=utf8"; Connection conn = null; Statement stmt = null; ResultSet rs; try { Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection(connStr, "root", "123456"); stmt = conn.createStatement(); } catch (Exception ex) { ex.printStackTrace(); System.out.println("exception in getConnection"); }

简单学生信息管理系统设计

——综合性程序设计 题目:简单学生信息管理系统(序列化版)班级: : 学号:

实验目的: 1.综合运用输入、输出的知识,用序列化方法保存、读入数组容。 2.设计实现一个简单的信息管理系统。 实验容: 编写能够满足如下条件的程序,分两次四个课时完成 1.声明Student类,该类实现Serializable接口以表明该类可 以进行序列化。该类有、学号、math、os、java用来存放 对应的成绩,在构造方法中进行、学号、课程成绩的赋值。 Override有Object继承来的tostring方法已便友好格式显 示自己的属性; 2.建立一个类,利用数组来存储多个Student,写完一个方法, 在main中写一段测试代码,运行以保证目前所做工作的 正确性,正确后再写其他代码。有以下方法: 1)add(Student stu):增加新的学生,人数满时显示人满或是new一个更长的数组,把现有的Student复制到新 数组 2)dispAll():可以显示所有的学生信息(测试add是否正确) 3)findById(long id):可以按照学号来查找,然后显示符合条件的学生信息,查无此人的话显示错误信息。 4)findByName(string name):可以按照来查找,然后显示符合条件的学生信息,查无此人的话显示错误信息。 (判断是否相等使用string类的equalsIgnoreCase方 法) 5)delBy Id(long id): 可以按照id来删除学生信息,然后显示找到该人,若查无此人的话显示错误信息。 6)save():利用ObjectOutputStream 来把数组写入文件中,需要考虑在什么时候调用该方法。 7)load():利用ObjectIntputStream 来进行反序列化,得到以前保存的容,注意要考虑以前未保存容的情况, 可返回错误信息。 3.在控制台显示一个菜单,并实现相应的功能。菜单如下: 1显示所有学生信息2按学号查找 3 按查找 4 按学号删除 5 保存 6 读入7 退出 请输入数字(1-7): 程序代码

jsp实验报告49775

Jsp实验报告 课程设计名称:兼职网站 系:交通运输管理学院学生姓名: 班级: 学号: 成绩: 指导教师: 开课时间:2013学年第2 学期

一.设计题目 兼职网站 二.主要内容 本网站涉及兼职信息、用户信息的数据管理。从管理的角度可将信息分为两类:兼职信息管理、用户数据管理。用户数据管理为用户的登录判定,兼职信息管理包括兼职信息显示及兼职信息的录入、查询和删除。 (1)用户的登录判定 (2)录入兼职的信息,并保存到数据库中 (3)根据用户的需求选择查询方式,查询相关兼职信息 (4)将信息从数据库中删除 三.具体要求 (1)建立数据库表格存储用户数据(用户名及密码)。 (2)建立数据库表格存储兼职信息,主要包括ID、兼职名称、地点、工资和联系方式。 (3)编写jsp 语句连接数据库 (4)利用request函数提交表单,获取输入信息 (5)以SQL语句对数据库进行操作,完成信息的添加,查询及删除等功能。四.进度安排 五.成绩评定 正文 1、系统的需求分析和功能设计 随着电子信息在人们生活中的的使用比重不断增加,人们越来越习惯在网站上查找自己所需

要的信息不仅仅只是因其快捷,更因其接触的面更加广泛,信息的基础量足够大,足以满足人们更加细化的需求。在寻找兼职体验工作生活或赚取生活费用时,可以减少时间的浪费及其他不必要的消耗。 本网站涉及兼职信息、用户信息的数据管理。从管理的角度可将信息分为两类:兼职信息管理、用户数据管理。用户数据管理为用户的登录判定,兼职信息管理包括兼职信息显示及兼职信息的录入、查询和删除。用户登录后可以根据自己的需要对信息进行添加、查询和删除的操作 2、源程序及注释 主页:<%@page language="java"contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> xxx兼职网站 登录:login.jsp主要内容:

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

目录 引言 (2) 一.问题定义 (2) 1.系统开发背景 (2) 2.系统开发目的 (2) 3.系统介绍 (3) 4.系统的技术要求及限定条件 (3) 二.系统可行性分析 (3) 1. 可行性研究的前提 (3) 2.技术可行性分析 (4) 3.经济可行性分析 (4) 4.操作可行性分析 (4) 5.结论 (4) 1.功能模块 (4) 2.运行需求 (5) 四.现有系统分析 (5) 1.现行系统主要业务 (5) 2.现行系统的问题 (6) 五.新系统分析 (6) 六.系统总体设计 (6) 1.系统总体设计的指导思想 (6) 2.功能分析 (6) 3.数据流图 (7) 4.新系统数据库 (10) 七.结束语 (10) 学生信息管理系统,便于用于班级信息和学生信息的修改以及查询,减少人力、物力,提高了工作效率;且能监控学生的注册情况,能做到及时的通知学生注册,促进学校财务的有效运转。通过课程管理,便于查看

学校内专业开设的课程,便于及时的调整专业设置及专业内的课程设置,以提高学校的竞争力。通过对成绩管理,便于掌握学生的学习情况,教师的授课情况,为学校的学籍管理提供依据。通过教师管理,便于查看教师的任课情况,简化的教师工作量的计算。由此,不仅提高了工作效率,而且大大的提高了其安全性。 (10) 参考文献 (11)

学生信息管理系统分析报告 引言 当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。随着计算机网络技术的不断发展,其被越来越广泛地应用于各行各业,作为教育单位的学校更不例外。学生信息管理系统更是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生信息管理系统能为用户提供充足的信息和快捷的查询手段。 一.问题定义 1.系统开发背景 在科学技术飞速发展的今天,计算机科学及互联网日渐成熟,其强大的功能已为人们深刻认识,它已经进入人类社会的各个领域并发挥着越来越重要的作用。各行各业的人们无须经过特别的训练就能够使用电脑完成许许多多复杂的工作。 学校规模的不断扩大,使学生的数量急剧增加,有关学生的各种信息资料也成倍增长。办学者们所头疼的问题就是如何面对这庞大的信息量。所以我觉得有必要建立一个学生学籍管理系统,使学生学籍管理工作规范化,系统化,程序化。该系统不仅可以提高当前我国学校管理工作的效率、改进师生或同学之间的信息交流方法,同时也可以通过后台数据库系统的管理功能实现学生注册、学生成绩的查询、学生选课等基本功能。 2.系统开发目的 高效快捷的学生信息管理系统可以提高学校对信息的管理,减少人力资源的开支和浪费,从而提高学校在各方面的工作效率。通过这样的系统,可以做到信息的规范管理、科学统计和快速的查询,从而减少管理方面的工作量。由于计算机和网络的普及,若建立一个B/S结构的学生信息管理系统,学生便可以通过网络来选课并且查询自己的有关信息,使得学生信息管理工作系统化,规范化,自动化,大大提高了学校管理学生的效率。

基于jsp学生信息管理系统的设计与实现

摘要 随着信息技术的发展及在管理上的应用越来越深入而广泛,管理信息系统的设计、实施在技术上于完善。在当今社会任何单想要生存、发展,都必须有效的组织、合理的运用资源,因而管理信息系统也成了他们不可缺少的管理工具。 目前,学校的规模都在不断的扩大,学生数量在急剧增长,有关学生的相应信息也在成倍的增加。这就需要一个功能完善的学生信息管理系统来进行信息的规范化费力。本系统的开发主要包括后台数据库的建立、连接和维护以及前台网络页面的开发两大方面。由于Java 的跨平台性、安全性等诸多优势,本论文采用Jsp+Tomcat+SQLServer的技术途径和规范的全局设计开发流程,在Myeclipse的开发环境下设计、编写学生信息管理系统。系统用户权限分两种:学生和管理员,不同权限的用户登录到不同的操作页面,从而进行相应的操作。 关键词:学生信息管理,Jsp,SQLServer

目录 第一章绪论 (3) 1.1 选题背景 (3) 1.2 课题研究现状 (3) 第二章管理信息系统概述 (3) 2.1 管理信息系统介绍 (3) 2.2 管理信息系统设计原则 (4) 第三章可行性分析 (5) 3.1 学生信息管理系统的目标 (5) 3.2 系统建设技术可行性分析 (5) 3.2.1 系统模式分析 (5) 3.2.2 MVC与Jsp/Servlet技术分析 (6) 3.3 系统建设经济可行性的分析 (7) 第四章需求分析 (8) 4.1 系统的功能简述 (8) 4.2 系统的功能分析 (8) 第五章系统总体结构设计 (10) 5.1 系统功能模块划分与设计 (10) 5.1.1 系统功能模块划分 (10) 5.1.2 系统功能模块流程图 (10) 5.2 系统功能模块流程图 (11) 5.2.1 系统管理员功能模块流程图 (12) 5.2.2 学生功能模块流程图 (14) 第六章系统详细设计 (17) 6.1 数据库模型的分析与设计 (17) 6.1.1 数据库概述 (17) 6.1.2 数据字典 (17) 第八章参考文献 (18)

简单学生信息管理系统

简单学生信息管理系统-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

——综合性程序设计 题目:简单学生信息管理系统(序列化版)班级: 姓名: 学号:

实验目的: 1.综合运用输入、输出的知识,用序列化方法保存、读入数组内容。 2.设计实现一个简单的信息管理系统。 实验内容: 编写能够满足如下条件的程序,分两次四个课时完成 1.声明Student类,该类实现Serializable接口以表明该类可 以进行序列化。该类有姓名、学号、math、os、java用 来存放对应的成绩,在构造方法中进行姓名、学号、课 程成绩的赋值。Override有Object继承来的tostring方法 已便友好格式显示自己的属性; 2.建立一个类,利用数组来存储多个Student,写完一个方 法,在main中写一段测试代码,运行以保证目前所做工 作的正确性,正确后再写其他代码。有以下方法: 1)add(Student stu):增加新的学生,人数满时显示人满或是new一个更长的数组,把现有的Student复制 到新数组 2)dispAll():可以显示所有的学生信息(测试add是否正确) 3)findById(long id):可以按照学号来查找,然后显示符合条件的学生信息,查无此人的话显示错误信息。 4)findByName(string name):可以按照姓名来查找,然后显示符合条件的学生信息,查无此人的话显示错误 信息。(判断姓名是否相等使用string类的 equalsIgnoreCase方法) 5)delBy Id(long id): 可以按照id来删除学生信息,然后显示找到该人,若查无此人的话显示错误信息。 6)save():利用ObjectOutputStream 来把数组写入文件中,需要考虑在什么时候调用该方法。 7)load():利用ObjectIntputStream 来进行反序列化,得到以前保存的内容,注意要考虑以前未保存内容的 情况,可返回错误信息。 3.在控制台显示一个菜单,并实现相应的功能。菜单如 下: 1显示所有学生信息 2按学号查找 3 按姓名查找 4 按学号删除 5 保存 6 读入 7 退出 请输入数字(1-7):

学生信息管理系统项目开发总结报告

项目开发总结报告 1引言 1、1编写目的 为了总结报告在工作过程中产生的问题、获得的经验, 并且总结报告设计与制作者过程中的逻辑与想法,以便在以后的生产与学习过程中得到进一步提高。 1、2背景 说明: a.本项目名称:学生信息管理系统; b.此软件的任务提出者:小组; 开发者:全体小组成员。 1、3定义 服务器端API :服务器端设计者通过规范的API文档,提供给客户端,以方便客户端的开发,使得同时进行,提高效率,节约时间。两端通过protocol(协议类)进行通信; 用户:用户代指学生用户以及任课教师用户; 管理员:负责程序后台管理的工作人员。 1、4参考资料 《项目需求说明书》 《项目详细设计说明书》 《项目概要设计说明书》 参考资料: 《软件工程导论》 《软件文档编写》 2实际开发结果 2、1产品 产品名称:学生成绩管理系统

产品功能: 软件部分:能够管理与统计表学生成绩,支持老师输入,修改以及查询学生成绩,支持学生查询号自己的成绩与相关资料,支持管理员对学生信息的相关操作。 数据库部分:支持管理员将学生的相关信息在数据库中进行增加,删除与修改。 2、2主要功能与性能 功能: 2、2、1管理员功能 2、2、1、1学籍管理 (1)学生注册: 新学年一到,新生到学生注册出去注册,那么注册员可以接受新生的注册信息,那么信息就包括学生的基本信息以及简历: (2)学生信息查询: 用户可以根据学生的姓名、学号、班级、专业对学生的学籍信息进行查询 (3)学生毕业 可以成批地处理学生毕业,当然也可以设置学生毕业后学校对她们的资料保存期限 (4)修改学籍号 用户可以对学生的学号进行更改 (5)学籍变动 学籍变动包括学生学生换班、退学、插班、结业、休学等操作 2、1、1、2收费管理 (1)学生缴费标准 根据国家收费标准设置各个系各个专业的每年的学费、书费、住宿费等。 (2)学生缴费 该接口可实现学生的缴费操作。 (3)学生缴费查询 该接口能够以多个关键字对学生学费情况、以及各专业的收费标准进行查询。 (4)学生欠费统计 能够十分方便地统计每个班的缴费情况,以催促欠费学生尽快缴清 2、1、1、3班级管理 (1)班级添加 能够十分方便地添加班级,其中包括班级所在专业、班主任、班干部信息等。 (2)班级修改 修改班级情况,如辅导员、教室等 (3)班级拆、合 可以方便地实现班级的拆、合。 2、1、2教师功能 2、1、2、1成绩管理 (1)成绩录入

学生信息管理系统JSP版

学生信息管理系统JSP版(Eclipse) 1、新建new->Dynamic Web Project->名字为StudentJSP。 2、准备工作 1)编写JSP测试文件,名称为 修改的charset为UTF-8 加入代码:Hello! 代码: <%@page language="java"contentType="text/html; charset=UTF-8" pageEncoding=" UTF-8"%> 2)Properties->Java Build Path改为如图(需先在WEB-INF下新建classes) 3)将MySQL中一个jar包复制到/WEB-INF/lib下,如图: 3、在/WebContent下new一个JSPfile,名字为 代码如下: <%@page language="java"contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> 4、<%@page import=".*"%> 改进版本display1 1)将复制粘贴到本项目的/WebCont下并修改命名为 2)在/src下new一个新包,包名为 并在此包下新建两个新类来处理SQL的Helper。 代码如下: package import .*; 包和包 主要代码修改为内的修改,代码如下: <%@page language="java"contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import=%> "%> update the result <%@include file=""%> <% ("UTF-8"); String id=("id");

简单学生信息管理系统

. ——综合性程序设计 题目:简单学生信息管理系统(序列化版)班级: : 学号:

实验目的: 1.综合运用输入、输出的知识,用序列化方法保存、读入数组内容。 2.设计实现一个简单的信息管理系统。 实验内容: 编写能够满足如下条件的程序,分两次四个课时完成 1.声明Student类,该类实现Serializable接口以表明该类可 以进行序列化。该类有姓名、学号、math、os、java用来 存放对应的成绩,在构造方法中进行姓名、学号、课程成 绩的赋值。Override有Object继承来的tostring方法已便 友好格式显示自己的属性; 2.建立一个类,利用数组来存储多个Student,写完一个方法, 在main中写一段测试代码,运行以保证目前所做工作的 正确性,正确后再写其他代码。有以下方法: 1)add(Student stu):增加新的学生,人数满时显示人满或是new一个更长的数组,把现有的Student复制到新 数组 2)dispAll():可以显示所有的学生信息(测试add是否正确) 3)findById(long id):可以按照学号来查找,然后显示符合条件的学生信息,查无此人的话显示错误信息。 4)findByName(string name):可以按照姓名来查找,然后显示符合条件的学生信息,查无此人的话显示错误信 息。(判断姓名是否相等使用string类的 equalsIgnoreCase方法) 5)delBy Id(long id): 可以按照id来删除学生信息,然后显示找到该人,若查无此人的话显示错误信息。 6)save():利用ObjectOutputStream 来把数组写入文件中,需要考虑在什么时候调用该方法。 7)load():利用ObjectIntputStream 来进行反序列化,得到以前保存的内容,注意要考虑以前未保存内容的情 况,可返回错误信息。 3.在控制台显示一个菜单,并实现相应的功能。菜单如下: 1显示所有学生信息2按学号查找3 按姓名查找 4 按学号删除 5 保存 6 读入 7 退出 请输入数字(1-7): 程序代码

jsp实验报告

中南民族大学管理学院学生实验报告 课程名称: JSP程序设计 年级: 2010级 专业:信息管理与信息系统 姓名: 学号: 指导教师: 实验地点:管理学院综合实验室 20 学年至 20 学年度第 2 学期

第一章 JSP简介 实验 Tomcat服务器的安装与配置 一、实验目的 本实验的目的是让学生掌握怎样设置Web服务目录、怎样访问Web服务目录下的JSP 页面、怎样修改Tomcat服务器的端口号。 二、实验要求 1、将下载的6.0.13解压到D盘中,并进行调试。 2、用文本编辑器编写一个简单的JSP页面,并保存到Web服务目录中。 三、实验结果 所运行的代码如下; <%@ page contentType="text/html;charset=GB2312"%>

乘法表

<% for(int j=1;j<=9;j++) { for(int i=1;i<=j;i++) { int n=i*j; (i+"×"+j+"="+n+" "); } ("
"); } %>
页面 四、实验结果分析

1、默认的端口号为8080,若修改,在conf目录下的文件中修改端口号。 2、设置虚拟目录。在conf目录下的中前加入: 3、Tomcat服务器必须保持启动。

第二章 JSP页面与JSP标记 实验1 JSP页面的基本结构 一、实验目的 本实验的目的是让学生掌握怎样在JSP页面中使用成员变量,怎样使用Java程序片、Java表达式。 二、实验要求 本实验将用户输入的单词按字典顺序排序。需要编写两个JSP页面,名字分别为和。 三、实验内容 1)页面有一个表单,用户通过该表单输入若干个单词,并提交给页面。 2)负责排序单词,并将排序的全部单词显示给用户。 四、实验结果 实验所用代码如下: <%@ page contentType="text/html;charset=GB2312"%> 请输入单词(用空格分隔):
<%@ page contentType="text/html;charset=GB2312"%> <%@ page import=".*"%> <%! TreeSetdictionary=new TreeSet(); public void addWord(String s) { String word[] = (" "); for(int i=0;i<;i++) { (word[i]); } } %> <%

学生信息管理系统需求分析报告(完整版)5

学生信息管理系统 分 析 报 告 专业:经济学 班级:0902班 姓名: 吴雪艳 学号:090430213

任务分配: 1、可行性分析 2、系统功能分析 3、数据描述 4.详细设计 一、可行性分析 1. 问题: (1)目前的课程设计管理系统由人工统计处理。 (2)站用一个办公室和2-3个职工专门用来管理课程设计选课,每天有固定工作时间8小时。 (3)每人工资在每月2000-3000元。 (4)需要选题的同学按班级的方式报上来,经核对分配后方才生效,在通知老师选题情况。双方如有问题还需在工作时间来此解决。(5)由于是人工处理且工作量大,所以效率低,出错率高,修改麻烦。 2.项目目标:学生和老师可以方便的选课,同时可以查询和修改各自的信息,以便学校管理。 3.运行环境: (1)以Windows98 以上/ME/2000/XP作为学生选课管理系统的后台操作系统。 (2)前台开发程序为JAVA,SQL Server 2000。 (3)后台数据库为Microsoft Access 2000/ SQL Server 2000。

(4)主要硬件设备:PC机一台。 4. 开发风险:浪费资金人力,会影响原有管理方式,总体风险不大。 5. 经济可行性: 成本估计:一台计算机每天电费(工作18小时以上),需要4-5名管理远和数据库维护人员每天工资(每天工作在8小时以上),人员培训费用,定期软硬件更新费用,每年总运营费用,杂项费用。 资源分析:现有计算机比较充足,相关人才在学校内就能找到,工资要求低。 6.技术可行性:我校计算机系以及其他系都有软硬件知识丰富,具有较高的文化水平和计算机操作水平,可以设计管理该系统的学生和老师,且课余时间丰富,可以学习和了解在设计和应用当中会遇到或可 能遇到的技术问题。我校许多专业都以开设类似的课程设计题目,学生和老师在技术方面已经有经验,正缺少这样的实践机会。 7.法律可行性:虽然其他学校也有类似的管理系统,但都主要在本校使用,没有涉及到盈利方面,我校设计该系统也本着让学生和老师把握一次学习实践的机会的目的,锻炼他们的开发技术和能力,不会去抄袭已经设计好的管理系统,如有借鉴的地方发布时也会说明,而且该系统是本着方便学生学习的目的,而非盈利目的,所以不会和法律相冲突。 8.总体分析:比原有方式工作效率高,成本低,出错率低,使学校实现现代化网络教学管理。 二、系统功能分析

简单的学生信息管理系统C语言

#include #include //输入函数getch的头文件,不能用getchar,具体请查看两者的区别 #include //申请空间的函数malloc的头文件 typedef struct { //定义结构体类型,包含四项内容,可以自由添加 int num; char name[10]; int age; char sex[5]; }st; typedef struct node //构造结点(也是结构体变量) { st data; //数据域 struct node *next; //指针域(指向结构体,也就是自身) }list; list *create() //建立一个单链表 { list *p,*r,*head; //定义结构体指针变量 int i,n; head = (list *)malloc(sizeof(list)); //申请头结点 r = head; head->next = NULL; //头结点的指针域先定义为空 printf("请输入学生人数:\n"); scanf("%d",&n); printf("请输入学生个人信息:\n\n学号,姓名,年龄,性别\n"); for(i=1;i<=n;i++) { p = (list *)malloc(sizeof(list)); //申请一个结点 scanf("%d%s%d%s",&p->data.num,&p->https://www.wendangku.net/doc/e412511058.html,,&p->data.age,&p->data.sex); //向结点的数据域输入学生信息 p->next = NULL; r->next = p; //将头结点指向第一个结点,以此类推。 r = r->next; } return (head); //返回头结点的地址 } void output(list *h) // 输出链表中的学生信息 { list *p; p = h->next; //使p指向第一个结点 if(p == NULL)

相关文档 最新文档
欢迎登录xxx兼职网站
用户名:
密码: