扬州大学。
信息工程学院 09 级软件工程专业。
课程设计项目学生选课系统。
学生姓名黄如峰。
学生学号 091203213
指导教师吴宣为。
学生选课管理系统。
1 设计目的
1.1项目目的
1.2项目背景
2 需求分析
3 概要设计
3.1 系统框图
3.2 数据库概念模型
4 详细设计
4.1 用户登录模块
4.2 administrator登录模块
5 实现界面及过程。
6 心得体会
附录 科技进步将人类带到了信息时代,计算机已成为各行各业在业务处理与管理工作中必不可少的辅助工具,并对各行业的发展起到越来越大的推动作用。计算机信息管理技术的应用,除了能在相当大的程度上代替人工作业,从而减少人员工作量,减轻工作负担,减少工作中因人为原因而产生的错误从而避免不必要的损失外,更重要的是能建立准确畅通、简便的信息流通渠道,为工作提供所需要的准确、即时的信息以帮助作出正确而及时的选择与决定,从而给采用这门技术的单位带来了巨大的可见或不可见的利益与效益。同时对于我们所学的专业也有适当裨益:
1)进一步巩固和加深对“c#语言程序设计”课程基本知识和掌握,了解其在开发中的应用;
2)基本掌握面向对象程序开发的基本思路和方法;
3)综合运用“c#语言程序设计”课程和“软件工程”理论,来分析和解决课程设计问题;
4)通过对标准化,规范化文档的掌握不查阅有关技术资料,培养项目设计开发能力和团队协作能力。
项目名称初步定为:学生选课系统。分为二个子功能模块: 学生选课模块、管理员管理模块。
通过该系统:
选课模块可以执行对学生选课以及对已有课程的查询功能功能,方便快捷的选择感兴趣的课程信息,让选课变得快捷。
管理模块可以执行管理员登录,管理对课程的添加,删除以及对已有课程的查询功能 ,使系统的工作环境更和谐。
根据前面的需求分析,可以得到系统的功能划分框图(如图1所示)
该系统可以实现以下功能:
1)根据登录系统的用户的身份选择进入不同的操作主界面,实现不同的功能;
2)选课模块可以执行对学生选课以及对已有课程的查询功能功能,方便快捷的选择感兴趣的课程信息。
3)管理模块可以执行管理员登录,管理对课程的添加,删除以及对已有课程的查询功能。
图1 学生选课系统功能框图。
根据系统的功能分析,系统中需要考虑学生,教师,管理员各个实体及相互之间的关系如下面图2所示。
4.详细设计。
4.1学生选课模块。
一、功能。该模块主要是实现学生可以执行对学生选课以及对已有课程的查询功能功能,方便快捷的选择感兴趣的课程信息。
二、具体实现。
4.1.1查询课程(querycourse)
一、功能。将课程号、课程名、学分、教师名字、学时等课程信息序列化,以便调用查询课程信息。
二、具体实现。
三、关键方法。
将课程信息序列化以便查询课程信息。
4.1.2选课(selectcourse)
一、功能。学生通过selectcourse选择课程。
二、具体实现。
三、关键方法。
通过for循环输出全部课程信息。
将已选课程赋给已选课程数组string carr中。
通过fs可写文件流,把读出的写进文件existcourse中。
4.1.3显示以选课程(existcourse)
一、功能。学生用户可以通过existcourse显示已选择的课程信息。
二、具体实现。
三、关键方法。
将选过的课程用可读文件流s输出。
一、功能。该模块可以执行管理员登录,管理对课程的添加,删除以及对已有课程的查询功能。
二、具体实现。
一、功能。addcourse()中输入课程的课程号、课程名、学分、教师姓名、学时等信息,将该课程信息添加到学生选课课程信息的txt文本中。
二、具体实现。
三、关键方法。
1、string stustr = 方法说明以逗号为标记定义在txt文本中输出的格式。
2、crsarr[crsnum++]new course(cn, cname, credit, ctea, period);以序列化方式输出课程信息。
3、stream fs2 = new filestream(filepath, 通过创建可写的fs2文件流将课程信息添加到txt文本中。
一、功能。在delectcourse()中输入需要删除的课程名,将该课程的信息从原有的txt文本课程信息中删除。
二、具体实现。
三、关键方法。
str 字符串读取txt文本中信息的每一行。
== false用于判断读取的信息中是否包含需要删除的课程名。
空字符串text用于接收新的行信息,通过写文件流,输出删除课程后的课程信息。
学生选课系统。
学生(用户)登录界面。
学生选课界面。
学生已选课程界面。
管理员登录界面。
管理员添加课程界面。
管理员删除课程界面。
管理员查询已有课程界面。
6 心得体会
一周的c#课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。在设计过程中,与同学分工设计,和同学们相互**,相互学习,相互监督。学会了合作,学会了运筹帷幄。
课程设计是我们专业课程知识综合应用的实践训练,这是我们迈向社会,从事职业工作前一个必不少的过程.”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础.
通过这次c#课程设计,本人在多方面都有所提高。
本次课程设计,我们小组的课题是“学生选课系统”。经过大家的思考讨论,建立起了大体的框架和流程,并对需求进行严整分析,将功能细化分类后,我们小组成员分别获得了相应的任务。而我则是要完成“管理员对课程信息的录入和删除”的功能。
在这个过程中,我将课堂上的知识运用其中,并融入了自己的思想写出了一些方法。除了课上的知识外,通过老师的帮助和指导,我也接触了一些课外的知识,比如“split”的使用方法,让我受益匪浅。在编程的过程中我也发现了许多不足之处,但在老师和同学的帮助下都将问题解决了。
在今后的学习过程中我必须更加的深入探索,扎实的走好每一步。
在此感谢我们的吴宣为老师。,老师严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;老师循循善诱的教导和不拘一格的思路给予我无尽的启迪;这次c#课程设计离不开老师您的细心指导。而您开朗的个性和宽容的态度,帮助我能够很顺利的完成了这次课程设计。
同时感谢帮助过我的同学们,谢谢你们对我的帮助和支持,让我感受到同学的友谊和团结合作的重要性。
C 课程设计
自动走迷宫小游戏。根据课堂讲授内容,做相应的自主练习,消化课堂所讲解的内容 通过调试典型例题或习题积累调试c 程序的经验 通过完成辅导教材中的编程题,逐渐培养学生的编程能力 用计算机解决实际问题的能力。同时在设计的过程中发现自己的不足之处,对以前所学过的知识理解的更加深刻,掌握得更加牢固。迷宫生成。...
c 课程设计
哈尔滨 课程设计报告。课程 c 学号 姓名 班级 教师 1.管理系统的功能说明。课程信息管理 能够增加数据,删除数据,显示数据,修改数据,按姓名和首字母查询数据和一些基本的程序功能。2.存储数据的描述。coursenumber 课程号coursename 课程名subject 所属专业xingzhi...
C课程设计
面向对象程序设计课程设计。一 设计要求。1 课程设计以3 4人为一组,每人一个模块 2 课程设计时间为1周 在处理系统的时候,要从分析系统的需求入手,根据系统需求进行详细分析,明确系统功能,然后设计系统整体架构以及划分系统模块,按照模块分配小组中每个组员的具体任务,完成设计。二 系统设计规范。1 命...