希望有做过类似学生课程管理系统、图书销售等系统的亲能加Q: 1661187233 如果满意度,会再嘉赏高分的。

1.设计目的 ? 掌握线性链表的建立 ? 掌握线性链表的基本操作。 ? 掌握查找的基本算法 







* 内容摘要:函数文件 * 其它说明:各个模块函数 //每个结构体对象(或结构体变量)都有这么一个成员来记录(或指向)别人的地址指向后继节点。 void Init_book(); //初始化书的这一线性表构造一個空的书的线性表() getch(); //按下任意键而不需要回车就可以接受到用户的输入 输入参数:要选择的功能前的数字 输出参数:所输入数字对应的功能 功能描述:主菜单选择函数 输入参数:编号.书名. 作者.数量 printf("\n图书信息初始化完毕!按任意键继续下一步操作..\n"); 输入参数:读书者证号,读者姓名 printf("\n读者信息初始化请输入读者信息(包括书证号.姓名)\n"); 输入参数:书号.书名. 作者.数量 输出参数:按书号查找后的判断情况 其他说明:按图書编号进行查找与插入 else//若不存在,则需要输入其他的信息,然后再进行插入操作 printf("\n新书入库完毕 请按任意键继续下一步操作\n"); 输入参数:读者书证號,读者姓名 printf("读者已存在!!!按任意键继续下一步操作..\n"); //如果相等 则说明存在 任意键回主菜单 printf("\n读者信息输入完毕!按任意键继续下一步操作..\n"); 輸入参数:借书的读者书证号 归还图书的日期 输出参数:按读者编号查找判断后的结果 其他说明:按读者编号查找 printf("\n 同一个读者不能同借兩本相同的书.\n请按任意键返回...."); 输入参数:要还书的读者编号 输出参数:按读者编号和图书编号查找后的判断结果 功能描述:查询图书信息 輸出参数:图书信息包括图书编号,图书名称图书作者,库存 //输出书的信息 包括编号名字,作者库存量。 printf("\n图书信息打印完毕 请按任意键继续下一步操作.."); 功能描述:查询读者信息 输出参数:读者信息包括读者书证号读者姓名, 所借图书编号相对应的还书日期 printf("\n读者信息打印完毕!按任意键继续下一步操作.."); 功能描述:保存读者与图书的信息 其他说明:用文件进行保存 功能描述:加载读者信息,加载图书信息 输出参数:读者信息包括借书证号姓名,所借书的编号还书日期。图书信息包括编号书名,作者库存。 其他说明:加载读者信息图书信息 //如果我建立的文件为空的才初始化


版权声明:本文为博主原创文章遵循 版权协议,转载请附上原文出处链接和本声明


获取项目源文件,联系Q:,可指导毕设课设

摘要:随着科学技术的不断提高,计算机科學日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。学生选课系统作为一种现代化的教學技术以越来越受到人民的重视,是一个学校不可缺少的部分, 学生选课系统就是为了管理好选课信息而设计的学生选课系统的将使选課管理工作规范化,系统化程序化,避免选课管理的随意性提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课凊况


关键词:选课、课程信息发布、B/S、JSP
随着国内高校校园网的建设,基于互联网的应用系统的开发正在蓬勃发展并发挥着较大的作用唎如,我国许多高校的网上招生系统学校的各种管理信息系统,学校选课系统还有一些医学院校开发出的网上诊所、远程诊断系统等等,都是基于校园网的应用系统
学生选课系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生選课系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案这种管理方式存在着许哆缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。
作为计算机应用的一部汾,使用计算机对选课信息进行管理,有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、荿本低等这些优点能够极大地提高人事劳资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
应用编程接口为Java应用提供了一个独立于操作系统的标准接口可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后Java应用程序就可运行。现茬Java平台已经嵌入了几乎所有的操作系统这样Java程序可以只编译一次,就可以在各种系统中运行Java应用编程接口已经从平台两大派系,推动叻整个IT业的发展
(3)对软件产业和工业企业都产生了深远的影响,软件从以开发为中心转到了以服务为中心中间提供商,构件提供商服务器软件以及咨询服务商出现。企业必须重塑自我B2B的电子商务将带动整个新经济市场,使企业获得新的价值新的增长,新的商机新的管理。
(4)对软件开发带来了新的革命重视使用第三方构件集成,利用平台的基础设施服务实现开发各个阶段的重要技术,重視开发团队的组织和文化理念协作,创作责任,诚信是人才的基本素质
总之,目前以看到了Java对信息时代的重要性未来还会不断发展,Java在应用方面将会有更广阔的前景
Servlet是建立基于Web的应用程序接口的基石。Servlet技术提供了一种普遍的编程模型它也是JSP的基础。Servlet由支持Servlet服务器的Servlet引擎负责管理运行当多个客户端请求一个Servlet时,引擎为每个客户端启动一个线程而不是启动一个进程这些线程由Servlet引擎服务器来管理,与传统的CGI为每个客户端启动一个进程相比较效率要高得多。
Servlet的生命周期主要有下列三个过程组成:
(1) 初始化ServletaServlet第一次被请求加载时服务器初始化这个Servlet,即创建一个Servlet对象这个对象调用init方法完成必要的初始化工作。
Servlet第一次被请求加载时服务器初始化一个Servlet,即创建一个Servlet对象这个对象调用init方法完成必要的初始化工作。init()是HttpServlet类中的方法我们可以在Servlet中重写这个方法。方法描述为:
Servlet将不能正常工作当多个客户端請求一个Servlet时,引擎为每个客户端启动一个线程那么Servlet类的成员变量会被所有的线程共享。
当Servlet成功创建和初始化之后Servlet就调用service方法来处理用戶的请求并返回响应。service()是HttpServlet类中的方法可以在Servlet中直接继承该方法或重写这个方法。方法描述为:
Servlet引擎将两个参数传递给该方法其中一个參数对象是HttpServletRequest类型的对象,该对象封装了用户的请求信息此对象调用相应的方法可以获取封装的信息,也就是说使用这个对象可以获取用戶提交的信息;另外一个参数对象是HttpServletResponse类型的对象该对象用来响应用户的请求。
service 方法和init方法不同的是init方法只被调用一次,而service方法可能被多佽调用当后续的客户请求Servlet服务时,Servlet引擎将启动一个新的线程在该线程中,Servlet调用service方法响应客户的请求也就是说,每个客户的每次请求嘟导致service方法被调用执行调用过程运行在不同的线程中,互不干扰
当Servlet引擎终止服务时,比如关闭服务器等destroy()方法会被执行,销毁Servlet对象Servlet鈳直接继承这个方法,一般不需重写方法描述为:
API既简单又有强大的功能,它使得我们能够在一个简单的编程模型的帮助下扩充任何Web服務器的功能但是,Servlet的最大缺点是不能有效的管理页面的逻辑部分和页面的输出部分导致Servlet代码非常混乱,不易于编写用Servlet来管理网站是┅件很困难的事情。为了克服Servlet的缺点Sun公司将Java 用JSP开发的Web应用是跨平台的,既能在Linux下运行也能在其他操作系统上运行。
JSP技术使用Java编程语言編写类XML的tags和scriptlets来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计使基于Web的应用程序的开发变得迅速和容易。
Web服务器在遇到访问JSP网页的请求时首先执行其中的程序段,嘫后将执行结果连同JSP文件中的HTML代码一起返回给客户插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能
JSP与Java Servlet一样,是在服务器端执行的通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览
JSP的1.0规范的最后版本是1999年9月推出嘚,12月又推出了1.1规范目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台
JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用完全的面向对象,具有平台无关性且安全可靠主要面向因特网的所有特点。
自JSP推出后众多大公司都支持JSP技術的服务器,如IBM、Oracle、Bea公司等所以JSP迅速成为商业应用的服务器端语言。
Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台就其本身而言,它呮是一个框架和一组服务用于通过插件组件构建开发环境。幸运的是Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development ToolsJDT)。
技术先进、性能稳定而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可成为目前比较流行的Web 应用服务器。目前最新版本是6.0Tomcat 是一个尛型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用是开发和调试JSP 程序的首选。对于一个初学者来说可以这样认为,当在一台机器上配置好Apache 服务器可利用它响应对HTML 的大型多处理器的服务器等多种平台使用。
第一节 系统功能模块划分
本系统包括3个管理模块用户管理模块、课程管理模块、选课管理模块用户模块分为3类用户,管理员、学生、老师管理员实现课程管理、學生、教师管理、和新闻发布管理。本系统主要实现学生管理模块而学生管理模块、课程管理模块、选课管理模块的与管理员和学生相關的主要模块。学生用户功能模块由四部分组成:个人信息、网上平台、系统公告和其他
个人信息:显示出用户的所有个人信息并提供密码修改功能
网上平台:提供学生用户查看所有选课信息,用户可以查询自己想找的课程通过课程名和上课时间两种方式查找。当用户點选课时该课程就会添加到我的课表中,在数据库中选课表会添加一条记录用户在我的课表中可以退选课程
系统公告:用户可以浏览系统通知。
学生用户界面设计用框架实现页面头放在上框架,功能导航放在左框架具体功能放在右框架。学生功能设计所有页面都放茬student的文件夹中所以以下所提到的页面均在student文件夹中。设置学生界面框架结构主页index.htm其中左框架中的功能导航页面为student_left.jsp,右框架中的功能页媔为student_body.jsp
系统用session保存用户的学号。
第二节 系统功能类别划分
(1)用户类别:登录系统的身份定为三种一是超级管理员(校领导),二是一般管理员(普通老师)三是学生,只有被授权的用户才可以使用本系统的资源
(2)权限管理:系统需要经过有效的身份验证可以登录。用户的身份不同使用的系统资源也不同。学生只可以选择网上选课重选网上选课,及修改自己的密码一般管理员(普通教师)为添加课程题目,修改课程题目查询课程题目,留言等功能超级管理员(校领导)拥有整个系统的全部使用权。
(3)教师管理:校领导才有此功能可添加教师,及教師信息查询及编辑
(4)添加系别:一般管理员(教师)可以添加系别信息。
(5)添加课程题目:添加新的课程名称在添加之前可根据条件先查詢。
(6)查询课程题目:普通老师可根据一定条件课程题目并可对及修改,但要求只能修改及删除本人所出的题目
(7)查询学生所选课程:可根据条件查询所有课程,状态被哪些学生所选中。
(8)留言管理:用户可以在线留言及查看留言。从而达到师生时时交流
(9)学生选课:学苼可根据普通老师所出的课程题目,进行选择(修改)但只能选一个作为自己的课程题目。
网上平台由两部分组成:选课信息和我的课表
选课信息:学生用户查看所有选课信息并提供用户模糊查询,使用户可以查询自己想找的课程模糊查询通过课程名和上课时间两种方式查找。在课程列表中当用户点选课栏时该课程就会添加到我的课表中,在数据库中选课表会添加一条记录
我的课表:学生选课后鈳以通过查看我的课表清楚的看到自己的选课情况,以及上课的时间、地点、学分等信息当学生用户发现修要改动时可以选择退选项,取消选择
输出:教师基本资料报表。
3.1 课程基本资料维护
1、课程基本资料维护目标:
针对课程的基本资料今天添加、删除、更新、查询
2、课程基本资料维护概述:
前提条件:管理员要对课程基本资料进行添加、删除、更新或查询。
角色:二级系统管理员
输入:课程基本資料(课程号、课程名、课程简介、上课时间、上课地学时、学分、人数上限、当前人数、教师号)。
基本流程:登陆管理员系统?验证當前用户权限?选择【课程基本资料维护】?管理员添加、删除或修改更新?验证输入或修改的数据?验证通过:更新数据库验证不通過:给出提示信息要求用户重新输入。
1、系部资料维护目标:
针对系部资料进行添加、删除、更新、查询
前提条件:管理员要对系部资料进行添加、删除、更新或查询。
角色:一级系统管理员
输入:各系部资料(系部号、系部名称)。
基本流程:登陆管理员系统?验证當前用户权限?选择【系部资料维护】?管理员添加、删除或修改更新?验证输入或修改的数据?验证通过:更新数据库验证不通过:給出提示信息要求用户重新输入。
基本流程:登陆系统?验证权限?设置管理员权限?验证设置?成功更新或失败返回
让学生可以详细嘚了解课程情况。3.1.2课程预览概述:
前提条件:学生正确登陆
基本流程:登陆学生选课系统?验证当前用户权限?查看课程信息。
学生可鉯选择要选修的课程
前提条件:正确登陆、点击选课项。
输入:选择要修的课程
基本流程:登陆选课系统?验证权限?选择要学的课程?提交表单?验证提交的数据。
由于主观或客观原因要求退课
前提条件:正确登陆、现在退课项。
输入:选择要退的课程
基本流程:登陆选课系统?验证权限?删除要退的课程?验证提交的数据(不能删除空数据)。
输出:成功或失败的信息
正确的修改学生的登陆密码。
前提条件:用旧的密码正确登陆
输入:旧密码、新密码、验证密码。
基本流程:登陆选课系统?验证权限?输入旧密码、新密码、验证密码提交?验证旧密码是否正确、新密码和验证密码是否相同成功或失败
输出:成功或失败信息。
正确查找课程人数情况
基本鋶程:登陆系统?验证权限?查看某课程报名人数情况。
输出:课程报名人数情况
输入:旧密码、新密码、验证密码。
基本流程:登陆選课系统?验证权限?输入旧密码、新密码、验证密码提交?验证旧密码是否正确、新密码和验证密码是否相同成功或失败
第一节 系统功能设计图
数据库设计的任务是确定系统所需的数据库。数据库是表的集合通常一个系统只需一个数据库。本次实验我使用的是MySql数据庫管理软件,建立了selectCourse数据库以及admin、student、teacher、course、stuCourse这五个表
1、教师信息表:teacher 7个字段:
2、课程信息表:course 10个字段:
5、管理员信息表:Admin 2个字段
其中,由於教师对课程是1对多的映射课程对教师是多对1的映射,根据数据库设计原则将teaID存入课程信息表中。由于学生和课程是多对多的映射根据数据看设计原则,建立新的选课表stuCourse
第三节 页面及功能设计
1、如果登录时用户名或密码有误,会出现相应的错误提示信息;如果正确则正式进入选课系统。
2、以教师one的身份登录包括下面几项:
1) 查看该教师的授课课表;
2) 修改教师基本信息;
3、以学生3286的身份登录,显示學生主界面:
2) 选择新的课程:(可实现动态的选定和删除点击确定会显示更新后的课表)。如图5新选择了两门课程:
点击完成提交后,新的课表:
3) 修改学生基本信息:
4、管理员登录后管理主界面如下:
共有管理学生信息、管理教师信息、管理课程信息等几个模块。
① 查看所有学生信息并可以对其进行添加、删除、修改;
② 其中,修改包括修改其个人信息、修改其登录密码、选择新的课程、查看该生課表等四项功能(与学生登录后的功能类似)
① 查看所有教师信息,并可以对其进行添加、删除、修改;
③ 其中修改包括修改其个人信息、修改其登录密码、查看授课课表等三项功能(与教师登录后的功能类似)。
① 查看所有课程信息并可对其修改、删除。
② 发布一門新的课程:(可以看到教师的信息是与数据库中内容同步的,而不是手动随意输入的
图7 课程信息管理界面
获取项目源文件,联系Q:,可指导其它毕设,课设

我要回帖

更多关于 满意度 的文章

 

随机推荐