文档库 最新最全的文档下载
当前位置:文档库 › C++程序设计 报告 及源代码 --学生选课系统

C++程序设计 报告 及源代码 --学生选课系统

C++程序设计 报告 及源代码   --学生选课系统
C++程序设计 报告 及源代码   --学生选课系统

摘要

C语言是在国内外广泛使用的一种计算机语言。C语言简洁紧凑、灵活方便、运算符丰富、适用范围大、可移植性好。它既具有高级语言的特点,又具有汇编语言的特点。它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。

本学生选课系统主要利用C语言的数组指针和文件操作能力设计开发一个小型的选课系统,至少具有如下功能:查看课程信息、查找课程信息、增加课程信息、修改课程信息、选课等功能。

本文主要对学生选课系统来进行说明。本程序主要考察对自定义函数的熟悉程度,本程序中主要使用到的是数组的相关操作,包括数组的输入、输出、查找、插入、删除等操作,需要对数组有比较深入的掌握。还包括指针、函数、结构体、文件等C语言的基础知识的运用。

关键字:源代码、指针、调用函数、流程图、结构、数组。

目录

第一章设计题目的内容、任务及具体要求 (1)

第二章总体设计思路 (2)

2.1程序功能 (2)

2.2模块关系 (2)

2.3总体框图 (3)

第三章功能模块的具体设计 (4)

3.1主函数模块的设计 (4)

3.2显示课程信息模块的设计 (7)

3.3查询模块模块的设计 (8)

3.4增加模块的设计 (9)

3.5删除模块模块的设计 (13)

3.6修改模块模块的设计 (14)

3.7选课模块的设计 (15)

3.8显示选课情况模块的设计 (17)

第四章功能模块的调试及测试 (18)

4.1登陆界面和主菜单界面的显示 (18)

4.2查询所有课程信息的显示结果 (19)

4.3查询单个课程信息的显示结果 (19)

4.4添加课程信息的显示结果 (20)

4.5删除和修改课程信息的显示结果 (20)

4.6选课的显示结果 (21)

4.7 查询选课情况的显示结果 (22)

4.8退出 (22)

总结 (23)

致谢 (24)

参考资料: (25)

附程序清单 (26)

第一章设计题目的内容、任务及具体要求

设计题目:学生选课系统

设计内容:本程序属于非数值计算型算法设计,学生需要设计出学生选课系统所需要的基本功能,并设计简单的界面(无需图形化)。本程序主要考察对自定义函数的熟悉程度,本程序中主要使用到的是数组的相关操作,包括数组的输入、输出、查找、插入、删除等操作,需要对数组有比较深入的掌握。要求程序运行结果正确,程序和算法具有一定程序度的健壮性,稳定性。

设计要求:

(1)通过提示菜单选择可以进行的操作。

(2)将课程的信息存入文件中,并命名为LessonInfo.txt。

(3)将选课情况信息存入文件中,并命名为SelectInfo.txt。

(4)在本系统中可以进行管理系统包含的基本操作,其中包括

1)查看所有课程的信息

2)输入一门课程的课程编号,从当前课程中进行查找,如果找到则显示该课程的相关信息,如果没有找到则给出提示信息

3)添加一门课程的基本信息,通过输入课程编号,首先查找是否存在该课程编号的课程,如果存在则提示重新输入,否则将该课程按照顺序插入到相

应位置

4)删除一门课程的基本信息,通过输入课程编号,首先查找是否存在该课程编号的课程,如果存在则将该课程删除,否则给出提示信息,提示该课程

不存在

5)选修一门课程,需要给出学号和课程编号,如果课程编号不存在则重新输入,直到输入正确为止,并将学号和相应的课程编号存入SelectInfo.txt

文件中

(5)课程基本信息包括课程编号、课程名、学时和学分这些简单信息。

(6)课程信息文件中每一行存放一门课程的信息。

第二章总体设计思路

2.1 程序功能

此系统是简单的学生选课系统。

具体的功能包括:

1)输入密码进入系统。

2)查看所有课程的信息

3)输入一门课程的课程编号,从当前课程中进行查找,如果找到则显示该课程的相关信息,如果没有找到则给出提示信息

4)添加一门课程的基本信息,通过输入课程编号,首先查找是否存在该课程编号的课程,如果存在则提示重新输入,否则将该课程按照顺序插入到相

应位置

5)删除一门课程的基本信息,通过输入课程编号,首先查找是否存在该课程编号的课程,如果存在则将该课程删除,否则给出提示信息,提示该课程

不存在

6)对课程信息进行修改。

7)选修一门课程,需要给出学号和课程编号,如果课程编号不存在则重新输入,直到输入正确为止,并将学号和相应的课程编号存入SelectInfo.txt

文件中

8)查看所选课程。

2.2 模块关系

根据提示输入学号和密码进入系统。通过主函数模块进入各个其它函数的模块,然后达到对课程信息的查看、增加、删除、修改和选课的功能,在这些模块中又调用其它小模块(如:排序模块)。本程序主要有:主函数模块、显示课程信息模块、查询模块、增加模块、删除模块、修改模块、选课模块、显示选课情况模块等八个模块组成。

2.3总体框图

先输入验证信息进入主模块,然后选择调用的模块

第三章功能模块的具体设计

3.1 主函数模块的设计

在主函数中通过inset()函数让用户输入验证信息进入,简单菜单的制作可以利用printmenu()函数实现。从文件中获取课程信息,并存放在定义的结构数组desk[100]中。定义结果的源代码为

struct classin

{

int number;

char classname[10];

int hours;

double credit;

};

typedef struct classin Classin;

Classin desk[100] = {0}

然后将文件中的信息读入此数组中,读取函数的代码为:

cfptr = fopen("LessonInfo.txt","r");

while(!feof(cfptr))

{

fscanf(cfptr, "%d%s%d%lf", &desk[i].number, desk[i].classname, &desk[i].hours, &desk[i].credit);

i++;

}

在后面的使用中都是调用此地址便可以对数组进行修改。

输入选择项choice,再用switch语句去调用其它函数,具体实现如下(主函数的主要代码):

while(choice != 8)

{

switch(choice)

{

case 1:myread(desk);break;

case 2:myfind(desk);break;

case 3:myadd(desk);shunxu(desk);filewhite(desk);break;

case 4:mydelete(desk);filewhite(desk);break;

case 5:mymodify(desk);shunxu(desk);filewhite(desk);break;

case 6:selection(desk, studentin);filewrite(studentin);break;

case 7:output(studentin);break;

default:break;

}

接着判断用户是否继续输入,若继续,则重新进行选择;否则,退出程序。

图3-1 inset()函数模块的流程图

上图是简单的将输入学号和密码的过程提示是一遍,但实际函数中我使用的三从循环。第一重循环是输入学号;第二重循环是判断该学会是否存在,若学号不存在便提示是再

输,还是退出系统;在学号存在时进入第三重循环,输入密码(注:学号和密码是在运行此函数时从文件中读到数组里)并在数组中查找,若有和该密码相等的数组元素,就将进入系统,否则提示继续或退出.

图3-2 main()函数模块的流程图

在次函数中用户通过输入选项进入不同的函数模块。当每次运行一个模块后,又进行选择。

3.2 显示课程信息模块的设计

本模块的设计主要是设计被调用函数myread(Classin *wkesk),是用指针指向储存课程信息的数组,调用数组的地址。再用循环把数组中的信息输出。主要代码为:for(i=0; i<=N-1; i++)

{

if(wdesk[i].hours == 0)

break;

printf("%-10d%-20s%-10d%-10lf\n",

wdesk[i].number,wdesk[i].classname,wdesk[i].hours,wdesk[i].credit);

}

在此片段函数中wdesk[i].hours == 0是作为循环的结束条件之一,能提前结束该程序。

图3-3 myprintf()函数模块的流程图

在上图中“课时!=0“就是上面解释的wdesk[i].hours == 0的另一形式。

3.3 查询模块模块的设计

本模块是要求设计查找功能的函数myfind(Classin *wkesk),同上步将数组地址调用。然后输入要查找的课程编号,再进行在数组中的查找。找到就输出,否则提示重新输入或退出。主要原代码为:

printf("Please enter the class number: ");

scanf("%d",&Number);

printf("\n\n");

for(i=0;i<=N-1;i++)

{

if(Number == wdesk[i].number)

{

if(wdesk[i].credit == 0.0)

{

printf("\n\n\n\n");

break;

}

printf("%-10s%-20s%-10s%-10s%\n",

"number", "classname", "hours", "credit");

printf("%-10d%-20s%-10d%-10lf\n\n\n\n",

wdesk[i].number,wdesk[i].classname,wdesk[i].hours,wdesk[i].credit);

flag = 0;

break;

}

}

在此程序中flag是作为标准值,初始为-1,当flag改变时说明已经找到该课程,否则为找到。在对flag赋值为-1;再做判断,看是继续查找,还是退出此函数模块。

图3-4 myfind()函数模块的流程图

3.4 增加模块的设计

本模块要设计被调用增加数组的函数myadd(Classin *wkesk)、排序函数shunxu (Classin *wkesk)和写入文件函数filewhite(Classin *wkesk)。这几个函数是按先后运行的。

3.41myadd(Classin *wkesk)的介绍

它主要源代码为:

if(wdesk[i].hours == 0)

{ wdesk[i].number = nub;

printf("\nPlease enter the class name: ");

fflush(stdin);

scanf("%s",&wdesk[i].classname);

printf("Please enter the hours: ");

scanf("%d",&wdesk[i].hours);

printf("Please enter the credit: ");

scanf("%lf",&wdesk[i].credit);

}

在运行此代码前,输入要增加的课程编号,然后在数组中查找,若没有,就再添加。其简易流程图为:

图3-5 myadd()函数模块的流程图

3.42排序函数shunxu()的介绍:

此函数的原理是用冒泡排序法将数组按照课程编号由大到小排序。

其主要源代码为:

Classin temp;

while(wdesk[k++].number != 0); /*计算有多少课程门课程的信息。*/

for(i=1; i<=k-1; i++)

{ for(j=0; j<=k-2; j++)

{

if(wdesk[j].number > wdesk[j+1].number){

if(wdesk[j+1].number == 0)

break; /*排到尾时,结束*/

temp = wdesk[j+1];

wdesk[j+1] = wdesk[j];

wdesk[j] = temp;

} /*交换*/

} }

在此函数中temp是做一个交换的中间变量。要注意函数中if(wdesk[j+1].number == 0)break;是十分有用的,它将数组中由于初始化时的0号元素排除,才能使排序得以成功运行。其流程图为:

图3-6 shunxu()函数模块的流程图

3.43将数组中课程信息写入文件的函数filewhite()的介绍:

此函数的主要源代码为:

cfptr = fopen("LessonInfo.txt","w");

do

{ if(wdesk[i].hours == 0)

break;

fprintf(cfptr, "%-10d%-20s%-10d%-10.2lf\n",

wdesk[i].number,wdesk[i].classname,wdesk[i].hours,wdesk[i].credit);

i++;

}while(i < 100);

在此函数中用“w”的写入方式,目的是将前面文件中储存的信息覆盖。其流程图为:

图3-7 filewhite()函数模块的流程图

注意:在打开文件进行操作完后要用fclose()关闭文件!

此模块主要用函数mydelete()用指针指向结构数组的地址,调用指针对数组进行修改。在里就是在数组中删除某项课程信息,然后用函数filewhite()将数组信息读入文件,读取方式为“w”。

最主要就是mydelete()函数的应用,下面为其主要源代码:

for(i=0; i<=N-1; i++)

{ if(wdesk[i].number == 0) break;

if(nub == wdesk[i].number) {

flag = 0;

for(j=i; j<=N-2; j++) {

wdesk[j] = wdesk[j+1]; /*将找到的课程删除*/

if(wdesk[j+1].hours == 0) break;

}

printf("Delete success.\n");

break; }

}

在这段函数中使用wdesk[j] = wdesk[j+1]用后一个数组元素覆盖前面一个,当循环结束后就达到删除的目的了。其流程图为:

图3-8 mydelete()函数模块的流程图

filewhite()函数在增加模块中已经介绍,这里就不做介绍了。

此模块主要用到修改函数mymodify(),其次还有filewhite()函数将修改后的数组读入文件。由于在增加模块中已近比较详细的介绍了filewhite()函数的使用,这里主要介绍mymodify()的原理。其主要源代码是:

for(i=0;i<=N-1;i++)

{

if(Number == wdesk[i].number){

if(wdesk[i].credit == 0.0){

printf("\n\n\n\n");

break;

}

printf("Please entr the classname: ");

scanf("%s",&wdesk[i].classname);

printf("Please enter the hours: ");

scanf("%d",&wdesk[i].hours);

printf("Please enter the credit: ");

scanf("%lf",&wdesk[i].credit);

printf("\nModify success!\n");

flag = 0;

break;}

}

在此函数中先将输入的课程编号找到,再对其进行修改。查找方法如同mydelete()中的数组查找。在找到后就分别对数组结构中每一个元素修改。

图3-9 mymodify()函数模块的流程图

3.7 选课模块的设计

在这个模块中用选课函数selection()将课信息读入数组,再用函数filewrite()将数组中的选课情况读进文件中。filewrite()与前面讲的filewhite函数相似,其主要的源代码为:

do{

if(wstudentin[i].studentnumber == 0)

break;

fprintf(sfptr, "%d\t",wstudentin[i].studentnumber);

for(j=0; j<10; j++)

{

if(wstudentin[i].classnumber[j] == 0)

{

fprintf(sfptr, "\n");

break;

}

fprintf(sfptr, "%d\t", wstudentin[i].classnumber[j]);

}

i++;

}while(i < 50);

在这里用到两个循环,可以达到选多门课的目的。其它地方可参考filewhite()函数。

现在主要来介绍选课函数selection(),首先,其源代码为:

scanf("%d",&wstudentin[i].studentnumber);

scanf(“%d”, &a);

for(j=0; j<=N-1; j++)

{

if(a == wdesk[j].number)

{

flag = 0;

wstudentin[i].classnumber[k++] = a;

break;}

}

在这个片段中先输入学号,然后输入课程编号,再在数组中查找,若未找到与输的编号相等,则提示重新输入或退出,否则提示选课成功。其流程图为:

图3-10selection()函数模块的流程图

3.8 显示选课情况模块的设计

此函数只用到输出选课情况的函数output()与函数myprintft()相似。其主要源代码为:

printf("%s\t\t%s\n", "student number", "class number");

for(i=0; i<50; i++){

if(wstudentin[i].studentnumber == 0){

printf("\n");

break;

}

printf("%d\t\t", wstudentin[i].studentnumber);

for(j=0; j<10; j++){

if(wstudentin[i].classnumber[j] == 0)

break;

printf("%d\t", wstudentin[i].classnumber[j]);

}

printf("\n");

}

流程图为:

图3-11 output()函数模块的流程图

第四章功能模块的调试及测试

4.1 登陆界面和主菜单界面的显示

在进入系统前,用户需输入学号和密码,若没有,则无法进入系统。当然,也有意外,如果保存学号和密码的文件丢失,可以注册登录。登录界面如下(图4-1 登录界面):

图4-1登录界面

当学号和密码都正确后进入主菜单界面,并可以按照此界面中的各种提示进行操作。主菜单界面如下(图4-2 主菜单界面):

图4-2主菜单界面

基于jsp(java)学生选课系统的设计和开发

基于jsp学生选课系统的设计 姓名 系别、专业 导师姓名、职称 完成时间

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

目录 第一章引言 第二章相关技术介绍 第一节Java技术 (2) 第二节Servlet技术 (3) 第三节Jsp技术 (4) 第四节开发软件介绍 (5) 4.1 eclipse平台 (5) 4.2 Tomcat服务器 (6) 4.3 SQL server 2000 (6) 第三章系统分析 第一节系统功能模块划分 (8) 第二节系统功能类别划分 (8) 第三节系统维护 (9) 3.1 课程基本资料维护 (9) 3.2 系部维护 (10) 3.3 管理员维护 (10) 第四节学生选课 (10) 4.1 课程预览 (10) 4.2 选课 (10) 4.3 退课 (11) 4.4 修改密码 (11) 第五节教师课程查询 (12) 5.1 查询课程情况 (12) 5.2 修改密码 (12) 第四章系统功能设计 第一节系统功能设计图 (13) 第二节数据库设计 (13) 第三节页面及功能设计 (14) 第五章总结

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

山东交通学院 面向对象课程设计学生选课管理系统软件 院(系别信息工程系 班级计算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)数据的管理和数据导出;

C++程序设计学生选课系统设计

EAST CHINA INSTITUTE OF TECHNOLOGY 课程设计报告课程设计题目:学生选课系统 学号1021113423 姓名彭楚涵 专业软件工程(国际教育) 班级10211134 指导教师王志波 2011 年12 月1 日

第一章:面向对象程序设计课程设计目的 (2) 第一章:算法分析 (3) 第三章:结束语 (8) 附:源代码 (9)

第一章:面向对象程序设计课程设计目的 本课程设计是在学习面向对象基本理论之后的实践教学环节。该实践教学是软件设计的综合训练,包括问题分析、总体结构设计、用户界面设计、程序设计基本技能和技巧。要求学生在设计中逐步提高程序设计能力,培养科学的软件工作方法。学生通过课程设计在下述各方面得到锻炼: 1 ?能根据实际问题的具体情况,结合面向对象的基本理论和基本技巧,正确分析问题,并能设计出解决问题的有效算法与程序。 2 ?提高程序设计和调试能力。学生通过上机实习,验证自己设计的算法和程序的正确性。学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改,进一步提高程序设计水平。

第二章:算法分析课程设计标题:学生选课系统 要求:假定有n门课程,每门课程有课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于10) 自由选课。试设计一选修课程系统,使之能提供以下功能:1?系统以菜单方式工作;2. 课程信息录入功能(课程信息用文件保存);3?课程信息浏览功能;4?查询功能(至少一种查询方式:按学分查询、按课程性质查询);5?学生选修课程。 应用程序功能的详细说明: 1. 首先根据设计要求,我定义了三个类:Class类,Control类,Menu类。Class类用 来存放一系列课程的信息,以及一些获取信息的get函数;Control类是用来定义选课类的操作属性,从Control类里面来判断并实现用户所需要执行的动作;Menu类定义了菜单的操作,其中包括显示菜单,显示提示信息,获取用户从键盘初输入的信息并执行。 2. 对Class类的定义,首先我定义了一系列的设置相关课程信息的公有函数,用来将 输入的内容传给私有函数,还定义了一些常函数,旨在于防止数据被其它函数调用时发生改变,同时将学分定义为浮点型,范围在0~10之间。 3. 对Menu类的定义,我定义了一个获取键盘输入的函数getlnput(),用于获取数据, 并且还定义了界面友好的显示目录函数,使得用户进行操作更加方便,以及定义了一系列的显示提示信息函数,之所以将这些函数独立分开,是为了在今后的修改中更加清楚。 4. 对Control类的定义,因为其目的是用于判断并实现用户所要执行的操作,是学生 系统的核心。一切从start()函数开始,通过switch语句判断按下了哪个按键,然后执行对应的操作,在文件录入这一方面,我定义了一个initlalization()函数,首先建立一个输入流,打开文件,将用户录入的课程信息放入到变量中,再由变量放入文件中。其中的公有函数即课程设计所要求的功能部分:添加选课,浏览选课,查询选课,保存文件。私有函数我用了链表,classList,用来一条一条记录课程信息,方便添加浏览以及查询。两种查询方法都运用了迭代器的功能,迭代器的作用相当于指针,从链表的头部一个个指向链表的末尾,用于浏览以及查询部分。最后把迭代器指向的对象每个字段写入文件中,文件名定义为classSave保存到程序的当前目录下。 5. 最后主函数的实现,代码十分简单,先定义一个Control类的对象,ControlClass, 再通过controlClass.start()启动整个程序。

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

文档编号: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;

C#课程设计学生选课系统论文.

摘要 (1) Abstract (2) 1 绪论 (3) 1.1课题背景 (3) 1.2系统设计目的与意义 (3) 2系统相关技术介绍 (4) 2.1 C#技术简介 (4) 2.2 SQL技术 (5) 2.2.1 数据库的基本概念 (5) 2.2.2 本系统中数据库的访问 (5) 3 系统分析 (6) 3.1 需求分析 (6) 3.1.1可行性分析 (6) 3.1.2 系统性能需求 (7) 3.2 系统流程图设计 (8) 3.3数据存储分析:实体联系图(E-R) (9) 4 系统总体设计 (11) 4.1 系统总体功能层次图 (11) 4.2 系统功能模块设计 (11) 4.3 数据库设计 (12) 4.4 部分源代码的设计 (13) 5 系统的具体实现及测试 (24) 5.1 登录界面 (24) 5.2 教师查询界面 (25) 5.3 学生选课界面 (25) 5.4 学生浏览、修改界面 (26) 总结 (27) 致谢 (28) 参考文献 (29)

摘要 随着在校大学生的不断增加,学生选课也成为学校对学生管理中不可缺少的一部分。以往的选课方法是使用人工的方法管理文件档案,这种管理方式存在许多的缺点:效率低、保密差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来不少的困难。随着科学技术的不断提高,计算机已经进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,实用技术绝对选课信息进行管理,具有手工管理所无法比拟的优点。 本文着重讨论了用https://www.wendangku.net/doc/316361246.html,技术和SQLServer2005开发选课系统的数据库的访问技术,并给出了一些可以实现的核心代码。通过该系统,使学生可以很方便的在校园网上进行网上选课。该系统使用C#作为https://www.wendangku.net/doc/316361246.html,的开发语言,SQLServer2005作为数据库,系统有较高的安全性和较好的性能。 关键词:学生选课、C#、https://www.wendangku.net/doc/316361246.html,、SQLServer2005

学生的的选课管理系统体系结构设计报告模板总结模板计划模板.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设计背景 可行性研究的目的是用最小的代价在尽可能的短的时间内确定数据库系统是否可能开发、是否值得开发、是否可以开发(在该报告中主要是考查《学生选课管理系统》是否可能开发、是否值得开发、是否可以开发)。其实质是在较高层次上以较抽象方式进行的、简化的压缩的需求分析和概要设计过程。

C语言课程设计---学生选课系统加源代码

C程序设计课程设计 题目:学生选课系统专业班级:通信工程1班姓名: 学号: 指导教师: 成绩:

摘要 学生选课系统是一个教育单位不可缺少的重要系统组成部分,它对于学校的决策者、管理者管理、查看课程来说都有至关重要,所以学生选课管理系统应该能够为广大学、师生提供充足的信息和快捷的课程选择过程,有助于学生选好每一门课程,此系统系统选课方便、快捷,用简单的界面来展示学生的选课信息,应用简单明了、存储量大、可靠性高、保密性好、寿命长、成本低等优点,可以极大的提高对学生信息管理的效率。利用C语言开发,实现了简单的学生课程信息的录入、修改、查询、删除等操作,并且能够利用文件系统长久的保留原始数据。

目录 一、需求分析 (1) 二、总体设计 (1) 三、详细设计 (2) 1、数据定义...................................................... 错误!未定义书签。 2、算法流程图 (2) 四、编码 (6) 五、调试 (7) 六、设计总结 (10) 致谢 (11) 参考文献 (12) 附录 (13)

一、需求分析 语言文字描述系统要做什么 数据结构可用结构体,包括课程和选修两个结构体,其中课程结构体成员结构体成员包括课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期。选修结构体成员包括学号,课程编号,该结构体的建立主要是为了查询某门课程学生选修情况。 二、总体设计 系统由哪几个功能模块构成,给出功能模块图。C 中模块化的工具是函数 根据上面的需求分析,可以将这个系统的设计分为如下七大模块: 选课模块、按学分查找模块、按编号查找模块、查看课程模块、查看选课情况模块、课程输入模块、完成选择模块。 菜单选择模块 录入学生信息 学生选课 系统信息查看及储存 退出系统 完成选择模块 学生信息 管 理 录入课程信息 课程 管理

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

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

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

学生选课系统设计报告

学生选课系统设计 报告

******************* 实践教学 ******************* 兰州理工大学 计算机与通信学院 春季学期 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)基本信息管理:此模块主要实现两个分支功能: ①个人信息修改和密码修改。在教师用户登录状态下,实现这些功能,通过对自己 的注册信息的修改满足用户的个性需求,能将注册信息及时反映个人状态,另外,密码修改则是很多网站都应具备的基本功能,能有效保护用户身份和网络安全。 ②其它基功能如学生查询,教师查询和留言查询,这三个功能都是在教师在线状态

UML网上学生选课系统程序设计

软件工程课程设计报告 (大三下期2015年) 课程名称:软件工程课程设计 题目学生选课系统 院系:软件工程 完成时间:2015.5. 8 组员:张中秋() 高蕾() 曾昭杰() UML网上学生选课系统程序设计 一、课程设计的目的与要求 UML统一建模课程是一门面向对象开发方法的设计语言。UML统一建模课程设计实验课,着重加强面向对象 建模技术。使用 UML统一建模语言,用需求模型简化业务领域;用分析模型验证用例的正确性,一致性,完备性,可行性;用设计模型标识解决方案。通过模型实现了从业务领域到软件领域的映射。通过建模,使问题可视化,形式化。通过以序列的建模和迭代活动,对于提高学生综合素质十分必要。 通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。 二、设计正文 1. 概述 1.1课题题目:网上学生选课系统 1.2系统的主要目标: 本系统目标是实现选课系统所需的各种基本功能,包括学生选课、查看已修课程、查看已选课程、退课功能和教师查看选修课程、提交课程成绩功能以及管理员添加学 生、维护学生信息、成绩管理、添加教师、维护教师信息、维护选修课程,还有公用的 修改密码等功能。 1.3系统的开发环境及运行环境: 操作系统:wi ndow7 建模工具:Ratio nal Rose 2007 2. 系统需求分析 学生选课系统主要满足来自三方面的需求,这三个方面分别是学生用户(Student )、教师用户(Teacher)和管理员用户(Administrator ),也即是三类用户角色。 (1)学生用户是主要的需求者,主要需求功能是查询可选课程、查看自己选课情况及进 行选课、、查看已修课程、退课操作等; (2)教师用户主要需求功能是查看自己所教授的课程、课程有哪些学生选修、以及利用 本系统提交学生的成绩;

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

学生选课及成绩查询管理系统的设计与开发 目录 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管理员角色拥有的功能 管理员信息管理 添加管理员信息; 管理员可以添加其他的管理员信息。 修改管理员信息; 管理员可以删除其他的管理员信息。

选课系统设计与实现

防灾科技学院 实习报告书 防灾科技学院灾害信息工程系 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.wendangku.net/doc/316361246.html,的选课系统开发所选的开发工具 Visual Studio 2010:Microsoft Visual Studio 2010 是微软的一个综合性的应用程序生命周期管理工具套件,可供团队用于确保从设计到部署的整个过程都能取得较高质量的结果。无论是创建新的解决方案,还是改进现有的应用程序,都能针对不断增加的平台和技术(包括云和并行计算)将梦想变成现实。 基于系统的建模选择的画图软件viso:Office Visio 2007 是一款便于IT 和商务专业人员就复杂信息、系统和流程进行可视化处理、分析和交流的软件。使用具有专业外观的 Office Visio 2007 图表,可以促进对系统和流程的了解,深入了解复杂信息并利用这些知识做出更好的业务决策。Visio帮助创建具有专业外观的图表,以便理解、记录和分析信息、数据、系统和过程。使用 Visio 时,以可视方式传递重要信息就像打开模板、将形状拖放到绘图中以及对即将完成的工作应用主题一样轻松。

相关文档
相关文档 最新文档