学生选课管理系统设计报告

学生选课管理系统设计报告
学生选课管理系统设计报告

《学生选课系统》课程设计学院信息工程专业网络工程班级 130461 课题名称学生选课管理系统设计

组长学号姓名成绩

组员学号姓名成绩

组员学号姓名成绩

开课时间 2014 至 2015 学年第一学期地点 D509

一、课程设计的目的和要求

本次学生选课管理系统的课程设计,明白整个系统架构,使得自己所学的Microsoft Visual C++ 6.0和Microsoft Access知识的相互结合,加深对数据库的认识,同时又复习了Microsoft Visual C++ 6.0的编写。为以后能够合理的、精确地、独立的完成数据库提供了前提。

数据库运用到数据库建立,建立表以及表与表的连接等等,前台用Microsoft Visual 6.0中MFC工程建立需要的界面与编写界面之间连接代码等。我们想通过本实验解决后台数据库与前台界面连接问题,这也是主要问题所在,只有正确连接才能保证前台用户操作正确的数据,达到数据库中数据资源的共享目的。

本次课程设计开发一套选课系统,由学生选课系统、教师系统和管理员系统三部分组成。

管理员可以通过管理员系统进行管理课程,查看课程选修情况,查看教师授课情况,修改或删除课程或者学生的信息。教师可以通过教师系统进行查看自己教授的的课程,可以进行对学生的评分,以及对自己密码的修改。学生可以通过学生选课系统进行查看备选课程及该课程的信息,选择希望选修的课程,以及对自己密码的修改。

二、设计

2.1本次课程设计建立学生选课管理系统,通过用户名、密码分别进入3个类别系统,分别是教理系统,教师管理系统,学生选课系统,

图2.1 学生管理系统基本图

通过管理员,进入系统界面可以执行以下操作:

通过学生,进入系统界面可以执行以下操作:

图2.4 教师管理系统

数据需求

(1)学生表信息:学号,姓名,性别,院系,班级,密码,年龄。

(2)课程表信息:课程编号,课程名称,学分,学时,开课学期。

(3)选表信息:学号,课程编号,课程名称,姓名,学分,成绩。

(4)教师表信息:教师编号,姓名,性别,密码,课程名称,年龄。

(5)管理员表信息:姓名,编号,密码。

2.2后台数据库与基本表的设计

图2.5 管理员表

图2.9 教师表

图2.6 课程表以及其连接的表

图2.7 选课表

图2.8 学生表以及其连接的表

2.3资源视图设计

建立完MFC工程之后进入前台界面制作,在Microsoft Visual C++ 6.0中界面制作分为三个模块:类视图,资源视图,文件视图。资源视图的设计是前台制作的第一步,资源视图里分为对话框制作与菜单制作,下面就分别介绍:

(1)主菜单设计:学生选课管理系统主菜单分为学生选课与管理员管理两个主菜单。

(2)对话框设计:学生选课管理系统对话框设计为25个,具体见截图:

豆豆学生选课系统教师,学生,管理员登录界面

图2.10 登陆界面

2.4文件视图设计

我们知道Microsoft Visual C++ 6.0编程需要有头文件,界面涉及的头文件更多,在文件视图里我们可以看到学生选课对话框涉及的所有头文件,本次课程设计选课系统头文件有如下:管理员添加学生信息

三、编码

下面是应用程序的部分代码:

(1)登录主界面与管理员操作界面,学生界面,老师界面的连接

#include "stdafx.h"

#include "Student.h"

#include "LogonDialog.h"

#include "AdmDialog.h"

#include "StuDialog.h"

#include "TeacherDialog.h"

CString usernumber;

CString username;

#ifdef _DEBUG

#define new DEBUG_NEW

#undef THIS_FILE

static char THIS_FILE[] = __FILE__;

#endif

///////////////////////////////////////////////////////////////////////////// // CLogonDialog dialog

CLogonDialog::CLogonDialog(CWnd* pParent /*=NULL*/)

: CDialog(CLogonDialog::IDD, pParent)

{

//{{AFX_DATA_INIT(CLogonDialog)

// NOTE: the ClassWizard will add member initialization here //}}AFX_DATA_INIT

}

void CLogonDialog::DoDataExchange(CDataExchange* pDX)

{

CDialog::DoDataExchange(pDX);

//{{AFX_DATA_MAP(CLogonDialog)

// NOTE: the ClassWizard will add DDX and DDV calls here //}}AFX_DATA_MAP

}

BEGIN_MESSAGE_MAP(CLogonDialog, CDialog)

//{{AFX_MSG_MAP(CLogonDialog)

ON_BN_CLICKED(IDC_LOG, OnLog)

ON_BN_CLICKED(IDC_LOGCANCLE, OnLogcancle)

//}}AFX_MSG_MAP

END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////

// CLogonDialog message handlers

void CLogonDialog::OnLog()

{

// TODO: Add your control notification handler code here

CDatabase db;

db.OpenEx("DSN=Student");

CString type,key,user;

GetDlgItemText(IDC_TYPE,type);

GetDlgItemText(IDC_USER,user);

GetDlgItemText(IDC_KEY,key);

if(key.IsEmpty()||user.IsEmpty()||type.IsEmpty())

{

AfxMessageBox("用户名或密码或类别不能为空!");

return;

}

CString strSQL;

CRecordset rs(&db);

int i;

if(type=="管理员")

{

strSQL.Format("select Aname from Admini where Anum='%s' and Akey='%s'",user,key);

rs.Open(CRecordset::snapshot,strSQL);

i=rs.GetRecordCount();

if(i==0)

{

AfxMessageBox("用户名或密码错误!");

SetDlgItemText(IDC_USER,"");

SetDlgItemText(IDC_KEY,"");

return;

}

rs.GetFieldValue("Aname",username);

usernumber=user;

SendMessage(WM_CLOSE);

CAdmDialog adm;

adm.DoModal();

}

else if(type=="老师")

{

strSQL.Format("select Tname from Teacher where Tnum='%s' and Tkey='%s'",user,key);

rs.Open(CRecordset::snapshot,strSQL);

i=rs.GetRecordCount();

if(i==0)

{

AfxMessageBox("用户名或密码错误!");

SetDlgItemText(IDC_USER,"");

SetDlgItemText(IDC_KEY,"");

return;

}

rs.GetFieldValue("Tname",username);

usernumber=user;

SendMessage(WM_CLOSE);

CTeacherDialog tea;

tea.DoModal();

}

else if(type=="学生")

{

strSQL.Format("select Name from Student where Num='%s' and Skey='%s'",user,key);

rs.Open(CRecordset::snapshot,strSQL);

i=rs.GetRecordCount();

if(i==0)

{

AfxMessageBox("用户名或密码错误!");

SetDlgItemText(IDC_USER,"");

SetDlgItemText(IDC_KEY,"");

return;

}

rs.GetFieldValue("Name",username);

usernumber=user;

SendMessage(WM_CLOSE);

CStuDialog stu;

stu.DoModal();

}

else

{

AfxMessageBox("没有该类型!");

SetDlgItemText(IDC_USER,"");

SetDlgItemText(IDC_KEY,"");

SetDlgItemText(IDC_TYPE,"");

return;

}

}

void CLogonDialog::OnLogcancle()

{

// TODO: Add your control notification handler code here

SendMessage(WM_CLOSE);

}

BOOL CLogonDialog::OnInitDialog()

{

CDialog::OnInitDialog();

// TODO: Add extra initialization here

CComboBox* pComb = (CComboBox*)GetDlgItem(IDC_TYPE);

ASSERT(pComb);

pComb->SetCurSel(0);

return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }

(2)登录界面与学生选课界面连接

#include "stdafx.h"

#include "Student.h"

#include "StuDialog.h"

#include "StudentAdd.h"

#include "LogonDialog.h"

#include "SCCCourseDialog.h"

#include "SCCourseDialog.h"

#include "ChangeKey.h"

#include "CJDialog.h"

#ifdef _DEBUG

#define new DEBUG_NEW

#undef THIS_FILE

static char THIS_FILE[] = __FILE__;

#endif

///////////////////////////////////////////////////////////////////////////// // CStuDialog dialog

CStuDialog::CStuDialog(CWnd* pParent /*=NULL*/)

: CDialog(CStuDialog::IDD, pParent)

{

//{{AFX_DATA_INIT(CStuDialog)

// NOTE: the ClassWizard will add member initialization here //}}AFX_DATA_INIT

}

void CStuDialog::DoDataExchange(CDataExchange* pDX)

{

CDialog::DoDataExchange(pDX);

//{{AFX_DATA_MAP(CStuDialog)

// NOTE: the ClassWizard will add DDX and DDV calls here //}}AFX_DATA_MAP

}

BEGIN_MESSAGE_MAP(CStuDialog, CDialog)

//{{AFX_MSG_MAP(CStuDialog)

ON_COMMAND(ID_MENUADDCOURSE, OnMenuaddcourse)

ON_COMMAND(ID_MENURELOG, OnMenurelog)

ON_COMMAND(ID_MENUSTUEXIT, OnMenustuexit)

ON_COMMAND(ID_MENUSEECHOICED, OnMenuseechoiced)

ON_COMMAND(ID_MENUCHANGEKEY, OnMenuchangekey)

ON_COMMAND(ID_MENUCJ, OnMenucj)

//}}AFX_MSG_MAP

END_MESSAGE_MAP()

///////////////////////////////////////////////////////////////////////////// // CStuDialog message handlers

void CStuDialog::OnMenuaddcourse()

{

// TODO: Add your command handler code here

CStudentAdd cs;

cs.DoModal();

}

void CStuDialog::OnMenurelog()

{

// TODO: Add your command handler code here SendMessage(WM_CLOSE);

CLogonDialog cl;

cl.DoModal();

}

void CStuDialog::OnMenustuexit()

{

// TODO: Add your command handler code here SendMessage(WM_CLOSE);

}

void CStuDialog::OnMenuseechoiced()

{

// TODO: Add your command handler code here CSCCCourseDialog scc;

scc.DoModal();

}

void CStuDialog::OnMenuchangekey()

{

// TODO: Add your command handler code here CChangeKey cck;

cck.DoModal();

}

void CStuDialog::OnMenucj()

{

// TODO: Add your command handler code here CCJDialog ccj;

ccj.DoModal();

}

BOOL CStuDialog::OnInitDialog()

{

CDialog::OnInitDialog();

// TODO: Add extra initialization here

CDatabase db;

db.OpenEx("DSN=Student");

CRecordset rs(&db);

CString strSQL;

strSQL.Format("select Num,Name,Sdepar,Sclass,Sage,Sbit from Student where Num='%s'",usernumber);

rs.Open(CRecordset::snapshot,strSQL);

CString temp1,temp2,temp3,temp4,temp6,temp5;

if(!rs.IsEOF())

{

rs.GetFieldValue("Num",temp1);

rs.GetFieldValue("Name",temp2);

rs.GetFieldValue("Sdepar",temp3);

rs.GetFieldValue("Sclass",temp4);

rs.GetFieldValue("Sbit",temp5);

rs.GetFieldValue("Sage",temp6);

}

SetDlgItemText(IDC_XUEHAO,temp1);

SetDlgItemText(IDC_XINGMING,temp2);

SetDlgItemText(IDC_YUANXI,temp3);

SetDlgItemText(IDC_BANJI,temp4);

//SetDlgItemText(IDC_AGE,"男");

if (temp5=="0")

{

SetDlgItemText(IDC_AGE,"男");

}

else

{

SetDlgItemText(IDC_AGE,"女");

}

SetDlgItemText(IDC_XINGBIE,temp6);

return TRUE; // return TRUE unless you set the focus to a control

// EXCEPTION: OCX Property Pages should return FALSE

}

(3)此外还有登录界面与教师评分界面连接、登录界面与学生修改密码界面连接、与学生删除选修课程界面之间的连接等等。

四、调试和运行

1、数据源连接:添加数据源

2、选择数据源以及连接成功

3、选课系统教师,学生,管理员登录界面

4、管理员查看课程信息

5、管理员修改学生信息

6、管理员添加课程

7、教师查看班上学生

8、教师对学生评分

9、学生登录

10、学生查看成绩

11、学生选课

12、学生修改密码

五、总结(心得体会)

通过这数周的努力,这个学生选课管理系统终于完成了。想想当初,刚开时动工的时候,那真是毫无头绪,根本不知道从哪入手,首先对MFC的相关知识不是很了解,再者对Microsoft Access程序的操作不是很熟悉。但我们并没有灰心气馁。通过几天的学习,请教,上网咨询,慢慢的有了一些眉目,同时也感觉不再那么无助。

虽然,对Microsoft Access的了解还不是很充足,但一些简单的操作还是很令我们兴奋。我也深深体验到要熟练掌握一种操作软件的难度时那么的大。在制作过程中,有失败,有兴奋。但我们坚持了下来,遇到困难我们没有灰心,首先的困难就是对信息的收集,对各个表建立属性的调查,通过书本上的介绍和网上的一些资料的启发,这个困难不再困扰着我们。但最大的困难就是对MFC的操作的学习,从一无所知到作出自己的程序,我们经历了许多的困难。在座的过程中我们一遍又一遍的建立工程项目,不对出错的时候又一遍又一遍的删除,还有一个困难就是对语句的输入,一个细微的细节都必须十分的注意,如果不认真思考决策,就会出现或大或小的错误,如果早期的错误隐藏下来,对后面的工作影响就会很大,甚至有时要推倒很多前面做的工作重来。再不懂的地方,上网查询,查看书籍,向同学请问,总之在做MFC的时候花费了我们很多的时间。有时候,我们自己觉得我们写的程序非常的正确,但是就是编译通不过,在查找错误的过程中,面临着否定自己的过程,非常的痛苦,而且由于自己的经验及各方面的能力的不足,所以进展很缓慢。最后还是限期的完成本次课程设计。

这次课程设计并不是完全由我们三个人完成的,虽然其他人都有不同的题目要求,但是我们还是相互讨论,相互学习,在自己一筹莫展的时候,其他同学有时候能够想出意想不到的方法!解决了我们的困难。总之,通过这个学生选课管理系统的设计,我感到受益匪浅。

学生选课管理系统软件课程设计报告(精)

山东交通学院 面向对象课程设计学生选课管理系统软件 院(系别信息工程系 班级计算091 学号xxxxxxxxxxxx 姓名 xxxxx 指导教师 xxxxx 时间2011-04-05—2011-04-17 课程设计任务书 题目学生选课管理系统 系 (部信息工程系 专业计算机 班级计算091 学生姓名 xxxxx 学号 xxxxx 0 4 月 05日至 04 月 17 日共 2 周 指导教师(签字 系主任(签字 年月日

成绩评定表

abstract In order to improve everyone's hands-on time ability and the content of the later work have certain knowledge, at the same time for everybody in a database of a learning inspection study; School for everybody arranged for a two-week course design, make everyone working environment to the database, and understand more about curriculum design is several classmates to do the same projects, the regulation of the people's operation, is later programming work strengthened the personal programming specifications. This document on the database and VC briefly simply introduces, in the form of using graphic combined with written by the students elective course system in detail. Students elective course system is a more perfect record course information, her students can add students' information, new information, show the modified students of information and inquires the student students of information, etc. For the record students' information provides convenient records. Key words: database, VC, source program, students' course selection 目录 1课程设计概述 (1 1.1学生选课管理系统软件功能概述 (1 1.2Visual C++6.0概述 (1 2学生选课管理系统软件总体设计 (1 2.1学生选课管理系统软件总体设计思想 (1 2.2总体设计流程图 (3

学生选课系统

管理信息系统课程设计报告 学生选课系统 班级: 学号: 姓名: 指导教师: 2014年12月20日

目录第一章:现行系统概述 第二章:系统分析 2.1需求分析 2.2可行性研究 2.3信息系统规划 2.4系统的开发方法的选择 2.5组织结构与功能分析 2.6业务流程分析 2.7数据与数据流程分析 2.8功能/数据分析 2.9新系统逻辑方案的建立 第三章系统设计 3.1系统总体结构设计 3.2数据结构与数据库设计 3.3代码设计 3.4输入/输出设计 3.5模块功能与处理过程设计 第四章系统实施 4.1系统实施 4.2系统运行调试

第五章:结束语(结论、建议、收获、体会及小组中每个成员的工作内容) 参考文献

第一章现行系统概述 本科生选课系统是个很庞大的信息系统。目前随着学校人数和课程的激增,对教务处而言,管理和维护选课系统关系到自身的效率,选课系统的繁杂,在一定程度上会相对的增加教务处的管理负担。对学生而言,在选课阶段必须面对大量课程进行仔细筛选,而所有课程聚在一起,学生无法快速定位自己想选以及在规定时间内被要求选的课程类别。 这些问题的出现表明我们的选课系统仍然存在着问题,也需要对其进行改造,由此提高学生选课效率,为学生的学习带来更大的便利。学生选课系统作为一种现代化的教学技术,越来越受到人们重视,是一个学校不可或缺的部分。学生选课系统就是为了管理好选课信息而设计的。学生选课系统将是选课管理工作规范化,系统化,程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够准确,及时,有效的查询和修改学生选课情况。

第二章系统分析 2.1需求分析 学生可以选修规定范围内的课程,查看已修学分总数,还可以修改个人信息。教师可以根据统计的人数挑选一定数量的学生,也可以直接在网上公布成绩,让学生直接在网上查询成绩。管理员可以指定每门课程的任课教师,修改课程信息,增加、修改、删除学生信息。分析一:系统应该满足以下几个方面需求: (1)某些选修课程因为前序课程或者教学管理资源的限制,要求系统能对课程选修人数、选修学生年级、专业等进行限制。 (2)选课过程需具有时效性,系统要能在短时间内响应大量学生的查询和选课要求,並及时处理。 (3)教务部门能及时掌握课程选修情况,系统界面直观,操作简单,学生不需经任何培训即可操作。 (4)系统要提供数据输出接口以供教务员作后期处理及保存。包括作为以后查询和评估使用的资料。 分析二:系统要实现的功能分为二大模块: 管理员模块: (1)负责统一管理,包括课程的查询、添加、修改和删除; (2)限制选修条件的管理,包括条件的添加、修改和删除; (3)统一管理用户,包括管理员和学生用户的管理; (4)系统公告的管理; (5)数据的管理和数据导出;

(完整版)学生选课系统可行性分析报告

文档编号:RS-4 版本号:1.0.0 学生选课系统 可行性分析报告 项目名称:学生选课系统 项目负责人:路景 项目开发小组:软三四组 修改记录:

学生选课系统可行性分析报告 1.引言 当今社会是一个讲求效率的社会,时间就是金钱。开发简单,易于操作的管理软件不仅可以节省时间,还可以避免浪费人力,物力,提高效率。 待开发系统是一个学生选课的管理系统,该系统软件非常容易被接受,它具有简单易学性,便于管理等功能。它是对学校选课管理的一种工具。 1.1编写目的 由于教学制度的改革,现在大部分高等院校实行的是学生的自主选课模式,传统的学生按照学校安排好的课程上课的教学模式已经不能适应新型的教学手段,如果仍然通过纸上的方式选课,一方面浪费的大量的人力、物力资源,另一方面浪费时间以及在人为的统计过程中不可避免出现的差错等情况。此选课系统就是为了解决这个问题。 1.2项目背景 随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现选课系统势在必行。对于一个学校来说,用计算机进行选课管理所无法比拟的优点是检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学校选课的效率。 工程名称:学生选课系统 工程组织者:威海职业学院 产品设计者:软三四组开发小组 产品生产者:软三四组开发小组 产品所有权:软三四组开发小组拥有 产品用户:具有一定特权的管理人员、老师和学生 1.3定义 学生选课系统是一个功能实用、操作方便、简单明了、使用方便的选课的系

统,能实现老师对课程的添加,删除,更改,浏览,查询等功能,并能对每门课程成绩进行评定,学生可对相关信息有查询和修改功能的系统。 1.4参考资料 魏志华.《软件工程》.北京:清华大学出版社,2005 张海藩.《软件工程》.北京:人民邮电出版社,2002 2.可行性研究的前提 2.1基本要求 (1)该软件的功能为:学生选课信息更新、选课查询、成绩查询、密码管理、以及学生选课信息的导入/导出。 学生选课信息更新:添加选课学生、删除选课学生、修改选课学生信息。 查询功能:记录浏览和条件查询。 密码管理功能允许合法用户对密码进行修改。 (2)性能 方便数据的录入,使查询速度大大提高。 (3)系统的输入 选课学生所包含的信息。 (4)系统的输出 查询结果和各类报表。 (5)数据安全和保密 系统对不同权限的用户提供不同的功能模块,有一定权限的用户可以进行操作,一般的用户只能进行查询的操作。 2.2开发目标 (1)开发此学生选课管理系统软件,使教学人员及操作者进行选课管理,方便操作者随时添加、查询、修改,使工作人员从繁琐的填表,查表工作中解放出来,使得人力和设备减少; (2)使供需双方都获得满意的结果; (3)促进报表、统计数字的规范化; (4)处理速度高,提高工作效率;

学生选课系统设计报告

大理学院数学与计算机学院《数据库系统设计》课程设计报告 班级:2012级计算机科学与技术1班 学号:201211514 姓名:刘秀珍 系统名称:学生选课系统 总分:

实验报告内容及撰写要求: 一、需求分析 程序的主要功能描述,可以用文字、框图、用例等方式。 参考《数据库系统设计任务书》附录中的内容来进行设计报告的撰写。 主要应当包含分析的过程及分析后得到的数据流图和数据字典。 二、数据库设计 2.1 数据库概念设计 实体关系模型设计,创建分ER图和总体ER图,并描述总体E-R图合并时的问题解决。 2.2数据库的逻辑设计 根据概念设计结果,创建数据库的逻辑模型,建立在具体DBMS下(SQL SERVER 2005)的表结构,并根据规范化理论对表结构进行优化调整。 同时,根据应用需求,创建数据库系统所需的外模式(视图)、模式和内模式(索引)等,此外,应当根据需求,建立数据完整性约束(实体完整性,参照完整性和用户自定义完整性)。 三、系统实现 3.1 数据库访问 1)数据访问类及实现代码 2)SQL语句 3.2 业务逻辑层类及代码 描述业务流程、数据处理功能的模块代码 3.3表示层的实现 可以用界面截图及其实现类及核心代码描述

四、总结

一、需求分析 1.1背景 全校性选修课开设的目的在于扩大学生的知识面、加强学生素质教育、培养复合型高级人才,具有不可替代的重要性。随着教育改革的不断深入和素质教育的加强,学分制的实施,选修课在一个学生的培养计划中占的比重将越来越大。 网上选课系统的出现使同学们能够更加自主、便捷、准确的进行选课。但是,由于一般高校中的学生都比较多,因此带来了诸多如信息管理等问题,鉴于需要将学生信息、选课信息等信息数字化以便于管理维护,我们便想到了利用数据库能够比较良好地解决此类问题,由此下面我将设计出一个学生选课系统以供参考。 1.2系统设计要求: 设计出一个学生选课数据库系统的简要要求如下: 1)设计要求 ①建立相应的数据库及相关的表、属性、约束、规则、默认等; ②输入相应的记录(每个表不少于20条记录); ③编写进行数据管理的存储过程。 2)系统用户由系统管理员、学生用户和教师用户三类组成。 (1)系统管理员的主要功能: ①用户管理(对教师、学生信息的管理和维护); ②课程管理(对课程信息的管理和维护); ③选课管理(实现选课功能开放和禁止、老师成绩输入开放和禁止)。

学生选课管理系统

学生选课管理系统 SANY GROUP system office room 【SANYUA16H-SANYHUASANYUA8Q8-

#include #include #include #include #include //定义学生对象类型 typedef struct node { char Sno[10]; //学号 char Sname[10]; //姓名 char Ssex[3]; //性别 char Sage[3]; //年龄 char Sdept[4]; //所在系 struct node *next; }Student; //定义课程对象类型 typedef struct node2 { char Cno[10]; //课程号 char Cname[10]; //课程名 char Cpno[5]; //先行课 char Ccredit[3]; //学分 struct node2 *next; }Course; //定义选课对象类型 typedef struct node3 { char Sno[10]; char Cno[10]; int Grade; struct node3 *next; }SC; //初始化学生信息表

void InitlistA(Student *stu) { stu->next=NULL; } //初始化课程信息表 void InitlistB(Course *C) { C->next=NULL; } //初始化选课信息表 void InitlistC(SC *S) { S->next=NULL; } //求选课表的深度 int Getlength(SC *S) { int i=0; SC *p; p=S->next; while(p!=NULL) { p=p->next; i ; } return(i); } //用户输入数据建立学生信息表(尾插法) void CreatelistA(Student *stu) { Student *s,*r; int m,i;

选课系统的设计与实现

防灾科技学院 实习报告书 防灾科技学院灾害信息工程系 2015年制

实习所用软件简介: 系统的搭建平台选用的操作系统是Windows XP:Microsoft Windows XP是微软公司推出供个人电脑使用的操作系统,包括商用及家用的台式电脑等。2011年9月底前,Windows XP是世界上使用人数最多的操作系统,它的全球市场占有率达42%。2012年8月份,统治操作系统市场长达11年之久的Windows XP最终被Windows 7超越。 基于数据库的选课系统的数据管理所选得软件是SQL Server2008:SQL Server 2008 在Microsoft的数据平台上发布,可以组织管理任何数据。可以将结构化、半结构化和非结构化文档的数据直接存储到数据库中。可以对数据进行查询、搜索、同步、报告和分析之类的操作。SQL Server 2008 允许使用Microsoft .NET 和Visual Studio开发的自定义应用程序中使用数据,在面向服务的架构(SOA)和通过 Microsoft BizTalk Server 进行的业务流程中使用数据。信息工作人员可以通过日常使用的工具直接访问数据。 基于https://www.360docs.net/doc/967937660.html,的选课系统开发所选的开发工具 Visual Studio 2010:Microsoft Visual Studio 2010 是微软的一个综合性的应用程序生命周期管理工具套件,可供团队用于确保从设计到部署的整个过程都能取得较高质量的结果。无论是创建新的解决方案,还是改进现有的应用程序,都能针对不断增加的平台和技术(包括云和并行计算)将梦想变成现实。 基于系统的建模选择的画图软件viso:Office Visio 2007 是一款便于IT 和商务专业人员就复杂信息、系统和流程进行可视化处理、分析和交流的软件。使用具有专业外观的 Office Visio 2007 图表,可以促进对系统和流程的了解,深入了解复杂信息并利用这些知识做出更好的业务决策。Visio帮助创建具有专业外观的图表,以便理解、记录和分析信息、数据、系统和过程。使用 Visio 时,以可视方式传递重要信息就像打开模板、将形状拖放到绘图中以及对即将完成的工作应用主题一样轻松。

学生的的选课管理系统体系结构设计报告模板总结模板计划模板.doc

精品文档 目录 0. 文档介绍 (2) 0.1 文档目的 (2) 0.2 文档范围 (2) 0.3 读者对象 (2) 0.4 参考文献 (2) 0.5 术语与缩写解释 (2) 1. 系统概述 (3) 1.1 概述 (3) 1.2 功能描述 (3) 2. 设计约束 (5) 2.1 需求规定 (5) 2.2 运行环境 (5) 2.3 接口约束 (6) 2.4 质量约束 (7) 2.5 隐含约束 (7) 3. 设计策略 (8) 3.1 关键技术 (8) 3.2 扩展策略 (8) 3.3 复用策略 (8) 4. 系统总体结构 (10) 4.1 逻辑设计 (12) 4.2 用户接口逻辑设计 (12) 4.3 物理设计 (12) 5. 子系统的结构与功能 (13) 6. 开发环境的配置 (18) 7. 运行环境的配置 (19) 8. 测试环境的配置 (20) 9. 其他 (20)

0.文档介绍 0.1 文档目的 该文档描述了学生选课管理系统的主要功能,阐述了系统的总体构架,包括物理、逻辑结构,并说明了体系结构所采取的设计策略和所有技术。 0.2 文档范围 学生选课管理系统 0.3 读者对象 项目组长,项目负责小组,各功能模块负责人及程序员。 0.4 参考文献 资料名称资料来源 《学生选课管理系统项目计划书》学生选课管理系统《学生选课管理系统需求规格说明书》学生选课管理系统《计算机软件文档编写指南》图书馆 《 CMMI+3级软件过程改进方法与规范》图书馆 0.5 术语与缩写解释 缩写、术语解释 SPP简并行过程(Simplified Parallel Process) PM项目管理(project management) 实体实体是一个可持久化的域对象,比如电脑、书等。 数据字典对数据流程图中对象的详细描述

学生选课管理系统需求规格说明书

学生选课系统需求规格说明书

目录 0. 文档介绍 (4) 0.1文档目的 (4) 0.2文档范围 (4) 0.3读者对象 (4) 0.4参考文档 (4) 1.产品介绍 (5) 2.产品面向的用户群体 (6) 3. 产品应当遵循的标准或规范 (7) 4.产品范围 (7) 5. 产品中的角色 (7) 6. 产品的功能性需求 (8) 6.0功能性需求分类 (8) 6.1后台管理功能需求 (8) 6.1.1管理员信息管理 (8) 6.1.2教师信息管理 (10) 6.1.3学生信息管理 (11) 6.1.4课程信息管理 (12) 6.1.5排课管理 (13) 6.1.6教室信息管理 (14) 6.2前台管理功能需求 (15) 6.2.1学生选课 (15) 6.2.2撰写教师反馈 (16) 6.2.3个人信息管理 (17) 6.2.4用户登录 (19) 7. 产品的非功能性需求 (20) 7.1用户界面需求 (20) 7.2软硬件环境需求 (20) 7.3产品质量需求 (20) 7.4其他需求 (21) 附录A:需求建模与分析报告 (22) A.1学生选课系统业务流程图 (22) A.1.1系统总体业务流程分析 (22) A.1.2学生管理业务流程图分析 (23)

A.1.3教师管理业务流程图分析 (24) A.1.4选课/退课子系统业务流程图分析 (25) A.1.5教师反馈子系统业务流程图分析 (26) A.1.6管理员管理业务流程图分析 (26) A.1.7管理员排课业务流程图: (27) A.1.8管理员退课业务流程图: (28) A.2学生选课管理系统数据流程图 (29) A.2.1顶层数据流程图 (30) A.2.2 O层数据流程图 (30) A.2.3后台管理数据流程图 (31) A2.4 前台管理数据流程图 (36) 附录B:需求确认....................................................................................... 错误!未定义书签。

学生选课系统课程设计报告

学生选课系统课程设计报告

《数据库原理》课程设计报告 题目:实验2学生选课系统 姓名:李子甘 班级:计科0601 学号:200640274 08年1月

一.需求分析 传统的选课方式都是手写的,教务处通知各 个班级选课,各个班长再通知同学,经过统 计在上交,这样繁琐的过程比较浪费时间。 再者选课时不知道所选课人数已满,要等到 教务处统计后才知道,然后再重新选择。网 上选课为同学节省时间的同时,也减少了不 必要的步骤,也更加方便管理员的管理。 网上选课系统为同学们提供了一个自由的 平台,学生们可以选择规定范围内的课程,查看已修课程总数,还可以修改个人信息。 同时也给老师提供了很大的方便,教师可以 根据统计的人数挑选一定数量的学生,也可 以方便的在网上公布成绩,让学生可以在网 上直接查寻成绩。 我国不少高校都实行学分制,它的核心是允 许学生自由选课,即把学生的自主权交给学 生。在这里,学生的选课制约因素比较复杂,工作量也很大,而且往往需要在较短的时间 内完成。运用计算机辅助选课,即能实时地 对大量选课数据进行检验和统计,十分方便 的输出选课结果,同时也避免了人工选课时

容易产生错误。 二.概念机构设计 根据系统功能设计的要求以及功能模块 的划分,各个系统的逻辑实现如下: 1.对于学生选课系统数据库,可以列出以下数 据项和数据结构: 学生信息:学号、学生姓名、学生的系名、学生性别、学生年龄、学生密码。2.对于教师信息维护数据库,可以列出以下数 据项和数据结构: 教师个人信息:教师编号、教师名称、教师密码。 3.对于后台管理数据库,可以列出以下数据项 和数据结构: 管理员信息:管理员名称、管理员密码。 课程信息:课程号、课程名称、课程类别、开课系。 选课信息:课程号、学生学号、成 绩。 4.数据流:学生管理员和教师分别有自己的权 限,学生可以查看全部选修必修课程,查看

学生选课管理系统(数据库课程设计)

数据库系统原理及其应用教程 课程设计报告 设计题目选修课程管理系统的设计与实现 指导教师

摘要 随着计算机技术的日新月异,极大的推动的各个行业的信息化进程。各大高校也急需进行信息化改革,以促进教学质量和工作效率快速提升。 本文是在对各大高校全校公开课学生选课情况进行实地调查后,进行详细分析讨论后撰写的学生选课管理系统数据库设计报告。全文从最初的系统规划,到需求分析、概念设计、逻辑设计、物理设计。每一阶段都进行了详细的分析。接下来的实现、运行与维护阶段,还

进行了对本系统的测试,最后是本次项目开发的心得和体会以及本文的参考文献。 本系统主要功能是对学生选课及相关信息进行管理。较行业同类产品而言,本系统人机界面设计更加合理、人性化,用户操作简单方便。数据库的安全性更高,对用户访问权限进行了严格控制。数据存取速度更快,使用年限更长。可以很好的满足高校公开课学生选课的要求,极大的提高了学校的工作效率。 关键字:学生选课管理系统;分析;设计 目录 一、概述 (4) 1.1 设计背景 (34) 1.2 设计目的 (36) 1.3 设计内容 (39) 二、需求分析 (19) 2.1 功能分析 (7) 2.2 工作流图 (6) 2.3 数据流图 (7)

2.4 数据字典 (16) 三、概念模型设计 (18) 3.1 实体之间的联系 (18) 3.2 E-R图 (19) 四、逻辑设计 (26) 4.1 概念模型向关系模型的转换 (26) 4.2 概念模型的优化 (27) 五、源代码及查询截图 (29) 5.1 数据库的存储结构 (29) 5.2 实现 (32) 5.3 人机界面设计 (34) 5.4 系统测试 (36) 5.5 运行维护 (39) 六、总结 (40) 参考文献 (41) 一、概述 1.1设计背景 可行性研究的目的是用最小的代价在尽可能的短的时间内确定数据库系统是否可能开发、是否值得开发、是否可以开发(在该报告中主要是考查《学生选课管理系统》是否可能开发、是否值得开发、是否可以开发)。其实质是在较高层次上以较抽象方式进行的、简化的压缩的需求分析和概要设计过程。

网上选课系统-需求分析报告

一、系统设计可行性 1.1网上选课系统的产生 网上选课系统是针对在校学生和教师使用的,从学生的角度来说,由于教学制度的改革,现在大部分的高等院校开始实行学生自主选课模式,传统的教学模式已经不能适应新的教学模式,如果还只是通过纸上的方式选课,一方面浪费大量的人力、物力,另一方面浪费时间以及在统计过程中不可避免的会出现差错。随着高校的人数增加,暴露出来的弊端会越来越多。 因此,利用网络,使学生只要在计算机前输入自己的个人选课信息即可完成原来几倍的作业量。从教室的角度来讲,同样可以节约大量的时间和减少工作量以及减少错误的发生率。 1.2可行性分析 网上选课系统的可行性分析包括以后几个方面: 1.技术可行性 由于校园网络的普遍应用,使得网上选课非常的方便,无需再进行网络的建设。基于B/S模式的选课系统更加适合校园网,使得学生可以在任何有校园网的地方完成选课过程。 https://www.360docs.net/doc/967937660.html,、C#语言在大二的时候学过了,而且数据库Access运 用的比较熟练,大部分做起来还算得心应手,部分不会的现在上网也比较方便,可以在网上进行查找。. 2.经济可行性

校园网应经普及,因此网络设备上不需要大的投入。加之,B/S 模式的系统只要求客户端具备浏览器的基本功能,就能实现网上选课。因此,从经济上来说,开发网上选课系统不需要很大的投入,硬件上只需要Web服务器和数据库服务器即可。 3.操作可行性 B/S模式的最大优势就是操作方便、如同浏览网页一样。 综上所述,网上选课系统在高校中是可行的。 二、系统的需求分析 2.1引言 2.1.1编写的目的 本文档是对该学生选课系统的一个整体把握,以便在下一步的开发设计中更好的控制开发。 本文档的预期读者是: 设计人员 开发人员 管理和测试人员 最终用户. 2.1.2背景 由于电脑时代的到来以及internet的迅速发展,电脑无处不在,当然各种工作效率也大幅提高,那么对于一个学校来说,开发一个好的学生选课系统势在必行。鉴此,特开发此学生选课系统,该系统实现了选课的网络化、信息化、现代化。

学生选课管理信息系统设计与实现备课讲稿

课程设计报告 课程:数据库课程设计学号: 姓名: 班级: 教师: 计算机科学与技术学院

学生选课管理信息系统的设计与实现 一、课程设计任务 完成学生选课管理信息系统的开发 二、需求描述 选课管理系统的主要目的是利用软件实现选课的录入、查询、修改等功能,针对不同表的用户(学生、教师、管理员)提供不同的操作,使学生选课及对其的管理更加方便,提高工作效率,降低管理成本。 选课的管理一般包括选课查询和选课维护两部分,在实际的选课过程中,学生主要对课程进行选择,了解自己的选课情况,而教师除了能够对选择教师自己教授的课程的学生进行查询之外,还要对课程成绩进行录入,修改等操作。对于整个系统而言,为了便于对各种数据进行维护,还要增设管理员,方便对学生和教师信息以及课程等基本信息的维护,从而达到灵活的管理选课的效果。 本系统是一个单机版的小型的学生选课管理系统,在本系统中,开发了一个面向管理员、学生和教师这三个对象的教务平台,对学生提供的服务有选课服务;对教师提供的服务有登录成绩;对管理员提供的服务有学生信息管理、学生选课管理模块、课程信息管理模块和用户管理模块。 三、系统总体设计 1.系统架构设计 学生选课管理信息系统的总目标是为用户提供迅速、高效的服务,避免手工处理的繁琐与误差,及时、准确地反学生选课情况、成绩情况,从而提高选课信息的效率,实现选课管理的规范化、自动化。在选课信息中,包括课程编号、课程名称、任课教师、选课的学生情况等。在学生信息中,包括学号、姓名、所属院系、已选课情况等。在成绩信息中,包括课程编号、课程名称、学分、成绩。按一定条件可以查询,并将结果打印输出。 具体的目标包括: (1)简便迅捷的用户登录服务 (2)教师、学生、管理员的信息和选课相关信息 (3)系统运行稳定可靠、各项维护功能齐全、易于维护 (4)简单、友好的操作界面 本实验实现的客房管理系统主要包括以下功能: (1).完成数据的录入和修改,并提交数据库保存。其中的数据包括:学生信息、课程设置、学生成绩以及操作员信息等; (2).实现信息查询。主要包括:学生信息查询、课程信息查询和成绩查询等; (3).具备一定的安全性管理功能。包括操作员的权限设置、密码设置、重新登录和修改口令等功能。 2.各模块功能:

学生选课系统设计报告

学生选课系统设计 报告

******************* 实践教学 ******************* 兰州理工大学 计算机与通信学院 春季学期 C程序设计课程设计 题目:学生选课系统 专业班级:应用物理 姓名:杨维峰 学号: 指导教师:李聪 成绩:

学生选课系统 摘要 学生选课系统是教育单位不可缺少的重要系统组成部分,她对于学校的决策者、管理者管理、查看课程来说都有至关重要,因此学生选课系统应该能够为广大学、师生提供充分的信息和快捷的课程选择过程,有助于学生选好每一门课程,此系统选课方便、快捷,用简单的界面来展示学生的选课信息,能够提高对学生信息管理的效率。 关键词:方便,快捷,选课信息,选择,管理

目录 1题目要求 (4) 2需求分析 (4) 2.1功能简介 (4) 3总体设计 (4) 4详细设计 (5) 4.1 系统主要函数说明 (5) 4.1.1 主函数 (6) 4.1.2 input函数 (7) 4.1.3del函数 (8) 4.1.4find函数 (9) 4.1.5display函数 (9) 5 系统测试 (10) 6总结 (13) 参考文献 (14) 致谢 (15) 附录: (16) 源程序 (16)

文档仅供参考,不当之处,请联系改正。 1题目要求 设计一个关于学生选课方便简捷的程序,从而达到学生能够快速的选到课程。 2需求分析 数据结构可用结构体,包括课程和选修两个结构体,其中课程结构体成员包括课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期。选修结构体成员包括学号,课程编号,该结构体的建立主要是为了查询某门课程学生选修情况。 2.1功能简介 此系统是一个学生选课管理系统。它包含功能有:学生选课信息的录入,学生选课信息的删除,学生选课信息的查找,学生选课信息的显示等功能。 菜单模式:此模块主要实现对本系统所有功能的显示。 录入模块:此模块主要实现对学生选课信息的录入,主要包括学生学号、学生姓名、所选课程、课程学分、授课老师。 删除模式:此模块主要实现对学生选课信息的删除。显示模块:此模块主要实现对学生选课信息的显示。 查找模块:此模块主要是经过学生学号查找该学生的选课信息。清屏模块:此模块主要是对主界面输入的信息进行清屏。退出程序:此模块主要用于退出系统。

学生选课管理系统(详细设计说明书)

1引言 (2) 1.1编写目的 (2) 1.2背景 (2) 1.3定义 (2) 1.4参考资料 (2) 2程序系统的结构 (3) 3程序1(标识符)设计说明 (7) 3.1程序描述 (7) 3.2功能 (8) 3.3性能 (8) 3.4输人项 (8) 3.5输出项 (9) 3.6算法 (9) 3.7流程逻辑 (9) 3.8接口 (10) 3.9存储分配 (11) 3.10注释设计 (11) 3.11限制条件 (11) 3.12测试计划 (11) 3.13尚未解决的问题 (11) 4程序2(标识符)设计说明....................................................................... 错误!未定义书签。

详细设计说明书 1引言 1.1编写目的 该详细设计说明书的目的在于根据需求说明书与概要设计说明书提出该系统的详细设计,即系统的详细架构,主要包括系统的模块划分、程序系统的结构、各个模块的流程以及各层次中每个程序的设计考虑。 1.2背景 软件系统名称:学生选课系统 软件实现计算机:方正科技 与其他系统和机构的相互管理:暂无。 1.3定义 图1 程序数据字典定义 1.4参考资料 1.《软件工程导论》(张海藩编著清华大学出版社2007年5月) 2.《数据库系统概论(第四版)》(王珊编著高等教育出版社2007年11月)

3.《Visualbasic程序设计》(吴定雪主编科学出版社) 2程序系统的结构 2.1 、管理员模块程序设计说明 ①人员管理:管理员在登录之后可以对系统内的人员(包括学生、教师等)进行管理, 包括对人员的信息进行查询、修改和删除等操作。 ②课程管理:管理员在后台添加、编辑课程的基本信息(包括授课教师、开课时间设定), 同时可以编辑系统开放选课的时间,在适当时间开启和关闭选课系统。 ③系统信息管理:管理员可对系统的基本信息进行编辑,对系统公告进行更改或者系统 标题、系统相关链接等。 ④系统权限管理:对不同的用户要分配不同的权限,管理员可设定不同人员对不同模块 的访问权限,允许或者拒绝不同用户对模块的增删查改操作。 图2.1管理员模块图 2.2、教师模块程序设计说明 (1)基本信息管理:此模块主要实现两个分支功能: ①个人信息修改和密码修改。在教师用户登录状态下,实现这些功能,通过对自己 的注册信息的修改满足用户的个性需求,能将注册信息及时反映个人状态,另外,密码修改则是很多网站都应具备的基本功能,能有效保护用户身份和网络安全。 ②其它基功能如学生查询,教师查询和留言查询,这三个功能都是在教师在线状态

学生选课及成绩查询管理系统的设计与开发报告

学生选课及成绩查询管理系统的设计与开发 目录 1、项目背景 (1) 2、技术选型 (1) 3、需求分析 (1) 3.1 系统实现的功能流程 (2) 3.2 管理员角色拥有的功能 (2) 3.3 学生角色拥有的功能 (3) 4、数据库设计 (4) 4.1 数据库关系图 (4) 4.2 完成系统中数据表的结构设计 (4) 5、界面设计 (6) 5.1 管理员角色 (7) 5.2 学生界面 (12) 6、关键技术的介绍 (15) 7、系统测试 (25) 8、完成情况总结 (26) 1、项目背景 学生选课及成绩查询系统是一个学校不可缺少的部分,传统的人工管理档案的方式存在着很多的缺点,如:效率低、保密性差等,所以开发一套综合教务系统管理软件很有必要,它应该具有传统的手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大的提高学校的管理效率,有助于推进学校的信息化建设。 2、技术选型 C#的窗体程序开发 本系统未采用C#实现MDI——多文档窗口,因为考虑到C#的该技术与java类似,而暑期java实训时,曾用过类似的方法做过停车场管理系统,所以想为这次的系统注入一点新鲜的血液,所以本系统设计的主题采用了了C#的C#TreeView实现。 Sql server数据库

3、需求分析 本系统包括两类用户:学生、管理员。管理员可以通过系统来添加管理员信息、修改管理员信息、添加学生信息、修改学生信息;开设课程、查询课程、录入成绩、统计成绩、修改成绩、修改个人密码等,而学生则可以通过系统来选择课程、查询课程、显示自己的课表、查询自己的成绩单、修改个人密码等等。 3.1系统实现的功能流程 具体的功能概述如下: 3.2管理员角色拥有的功能 管理员信息管理 添加管理员信息; 管理员可以添加其他的管理员信息。 修改管理员信息; 管理员可以删除其他的管理员信息。

学生选课管理系统数据库设计

学生选课管理系统数据库设计-MySql项目 文档作者:李国辉V1.0 当前版本:

专业资料. . 目录........................................................................................................................................ 31.系统概述............................................................................................................................. 32.开发环境与工具............................................................................................................................ 33. 数据库命名规范.............................................................................................................................. 33.1术语定义............................................................................................................................. 33.2 基本原则.................................................................................................................................. 4.数据库分析4.......................................................................................................................... 44.1数据表分析..................................................................................................................... 4 .4.2 数据库实体图...................................................................................................................... 5 .数据库E-R图4.3...................................................................................................................... 6.4.4数据表关系图.............................................................................................................................. 7数据字典4.5............................................................................................................................... 8业务功能模拟5. ........................................................................................................................... 8添加数据5.1 ........................................................................................................................... 8教室查询5.2 ........................................................................................................................... 8教师查询5.3 .................................................................................................................... 8 5.4 选修课程查询.................................................................................................................... 9 选修课表数据5.5 ........................................................................................................................... 9学生数据5.6 ........................................................................................................... 9成绩数据选修报名/5.7 ........................................................................................................................... 9备份数据5.5 ............................................................................................................................... 9 思虑题5.6 .................................................................................................................................. 9 .6. 扩展

学生选课管理系统

软件项目管理 学生选课管理系统 项目名称: 组长 组员 提交时间: 2015年6月15日

学生选课管理系统 项目任务书 一、目的、要求 通过软件开发的实践训练,进一步掌握软件项目管理的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。 具体如下: 1.学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象 的系统分析与设计,软件项目管理,编码和测试方面的知识; 2.熟悉自动化的软件开发工具Rational Rose 2003,并将其运用于软件 开发的全过程; 3.进一步加强和提高软件工程文档的编写能力; 4.培养协作能力和团队精神。 二、主要内容 1.课题题目:学生选课系统,本系统要实现学生选课的基本功能,包括学生退选课,查看自己的选课信息;教师查看选课学生的信息,提交成绩; 管理员添加学生、管理学生、管理成绩、添加教师、管理教师和管理课 程等。 2.运用面向对象技术、UML及可视化的建模工具完成系统的需求分析与设计。 3.使用Rational Rose作为需求分析与设计的建模工具,包括静态建模和

动态建模,并利用对象模型自动生成数据模型,自动建立数据库。 4.采用分层模式的应用设计模式进行系统的设计实现。 5.系统要实现四个模块功能:教师模块、学生模块、管理员模块和公用模块。 6.初步建立系统原型,实现关键的功能,并对系统进行测试。 三、任务分配

学生选课管理系统 任务分解书(WBS)一.学生选课管理系统任务分解 1.1.1 项目规划 1.1.2 计划评审 1.2 需求开发 1.2.1 用户界面设计 1.2.2 用户需求评审 1.2.3 修改需求、修改用户界面 1.2.4 需求规格说明书 1.2.5 编写需求获取方法 1.2.6 编写需求跟踪矩阵 1.3 设计 1.3.1 概要设计 1.3.2 详细设计

相关文档
最新文档