《数据库》课程设计
一、课程设计题目
下面给出2个实际软件开发项目,请任选一个题目作为本门课程的课程设计任务。首先我们对这两个题目分别做一下问题陈述。
中小学校教务处作为中小学校所有教学事务的管理中心, 是一所学校教学计划能够顺利进行的指挥和协调部门。其中排课室工作人员有限,排课的任务重,而影起课程变化的因素多,工作量大,迫切需要一套完善的计算机自动排课系统,以提高排课效率。
为此,要求软件主要完成的功能有:能根据教师要求(如某天不得排课)、课程约束(如体育不能排在上午第一节课)、班级约束(如某班星期五下午最后一节课不排课)、校级约束(如全校所有班级星期一下午第一节课都为班会)等信息自动为班级和教师生成课程表,要求主课尽量排在上午和下午一、二节课,副课尽量排在上午和下午的最后一节课,如体育课排在上午第一节课是不太合适的。对于软件不能安排的少数课程,教务工作者能够在自动排出的课程表上进行手工调课。
要求:(1)系统可以进行两节连课处理,如作文课可以连课上;(2)排出的课程表中不允许有教师冲突的情况,比如,一个教师同时给两个班级上课是不允许的;(3)要求课程表中的课程要有所变化,比如一个班级的所有数学课总是排在上午第一节课是不好的课程表。(4)每周上课天数可以是5天也可以是六天,每天上课节数可以是7节或是8节;(5)每个年级所开课程是一样的,而且所开课程可以变化;(6)一个教师可以教授多门课程;(7)系统可以为每个班级和每位教师打印课程表;(8)系统可以把生成的课程表自动转化成网页在网上公布;(9)在课表生效后,教师可以要求调课;(10)教师数量是动态的,所开课程的数量也是动态的。
2、学生学籍管理信息系统
学生学籍管理工作包括学生档案、学籍、成绩、升学等内容的管理;面对大量的学生数据、报表,手工处理方式已经很难跟上现代化的步伐。随着计算机技术及网络通讯技术的飞速发展,许多学校已经有了较好的计算机应用甚至网络硬件建设基础。因此为提高学校管理工作的现代化、科学化水平,保证信息处理的即时化、准确化,开发一套对学生学籍进行管理的软件是极其重要的。
应完成的主要功能:(1)学生档案的管理,即录入、修改、查询、输出学生档案信息,这些信息包括学生基本情况、学生简历情况、学生奖励情况、学生处分情况、学生家庭信息、学生体检情况。(2)学生学籍管理,录入、修改、查询、输出学生学籍信息,这些信息包括学生奖贷学金情况、学生注册、学生异动情况、学生军训情况、学生毕业情况。(3)学生成绩管理,录入修改、查询、输出学生入校成绩,各学期、各门课程的成绩信息,并支持按年级、班级等条件的统计、查询、报表输出。
二、开发环境
数据库可以选用微软的ACCESS、SQL SERVER或其他公司的数据库产品,只选择其中的一种数据库产品就可以。开发环境可以选择:(1)Visual C++ 6.0 ; (2)Visual Basic 6.0 ; (3)Delphi 6.0 ; (4)C++ builder 6.0;(5)Power builder 7.0。只选择其中的一种软件开发工具就可以。当然还可以选择教材中所介绍的基于微软的方案,采用ASP技术把软件开发成基于浏览器/WEB服务器的三层体系结构的系统。
三、基本要求
(1)完成问题陈述中所提到的所有需求功能
(2)要求撰写不少于2500个文字的文档。
(3)文档中至少要包括:ER模型图、系统功能图、数据字典、表关系的详细说明。
(4)用户界面设计:采用窗口式,色彩要柔和,界面要友好,操作要简单。
(5)用户手册,描述软件系统所具有的功能及基本的使用方法。使用户能了解该软件的用途,并能确定在什么情况下、如何使用它。
(6)操作手册,为操作人员提供该软件每一个运行的具体过程和相关知识,包括操作方法的细节等。
表关系说明样例如下
表名
字段名 |
数据类型 |
含义说明 |
空值情况 |
TeacherID |
Char(6) |
教师编号 |
主关键字 |
TeacherName |
Char(8) |
任课老师的姓名 |
不为空 |
PS |
Char(10) |
教师职称 |
可为空 |
……. |
…… |
…… |
|
四、文档格式
1、概述
包括项目背景、编写目的、软件定义、开发环境等内容。
2、需求分析
问题陈述、需完成的功能。
画出ER模型图
3、数据库逻辑设计
把ER模型图转换为关系表。
描述每一个基本表关系。要求所有关系达到BCNF范式。
定义视图、定义索引、主关键字、定义权限。
4、软件功能设计
画出软件功能图。
描述每一个功能所完成的任务情况。
5、界面设计
界面设计要合理。
6、结束语
写出完成本课程设计的心得,领会数据库理论与软件开发实践的关系。有哪些收获。软件还需要哪些改进。
7、参考文献。
2个题目任意选一个,谁会做,帮我做个发到我的油箱好吗?我是菜菜笨笨小小小鸟,求救,课程设计啊,会做的帮我下,2个题目任意选一个
谢谢了,我的油箱tianliang_1573@163.com QQ: 153593452
----------------解决方案--------------------------------------------------------
谢了哦...我还没学递归呢...所以看不太懂,不过还是很感谢你哦,以后一定努力~~
----------------解决方案--------------------------------------------------------
不知道那个fun()是什么,还没学到
不过这个可以实现逆序
#include"stdio.h"
main()
{ long a,b;
scanf("%ld",&a);
for(b=a/10;b>0;b/=10,a/=10)
printf("%d",a%10);
printf("%d\n",a);
}
----------------解决方案--------------------------------------------------------
你还没学函数的定义吧...等你学了就知道哦~~
----------------解决方案--------------------------------------------------------
嗯 只看了几个简单的语句的用法,上面说的我还没学。
----------------解决方案--------------------------------------------------------