数据库大作业报告

数据库大作业报告
数据库大作业报告

数据库实验报告

大作业

院(系):计算机学院

专业班级:网络工程1402

目录

第1章需求分析 (1)

1.1 需求调查 (1)

1.2 系统功能分析 (2)

1.3 面对用户需求分析 (3)

第2章面向对象分析和设计 (4)

第3章逻辑结构设计 (7)

类和对象向关系模式转换 (12)

第4章数据库物理结构设计 (12)

4.1 存取方法设计 (12)

4.2 存储结构设计 (12)

4.3 物理设计 (13)

第5章数据库完整性设计 (16)

5.1 主键及唯一性索引 (16)

5.2 参照完整性设计 (16)

5.3 Check约束 (17)

5.4 触发器设计 (17)

第6章数据库视图设计 (19)

第7章数据库存储过程设计 (19)

总结 (20)

参考文献: (20)

人事管理系统后台数据库

第1章需求分析

1.1 需求调查

通过对各个用户的调查,该人事管理系统有如下需求:

1)员工信息管理:

实现记录在该单位中所有人员的在该单位的员工信息,实现对员工信息的管理,也包括对员工信息的增加、删除、修改等功能。

2)部门信息管理:

实现对该单位中的各个部门的编号、部门相关信息的统计,此时也将单位中的所有人员进行分类管理。

3)职位调动管理:

实现当员工的就职信息发生更改的时候,系统进行相应关联信息的更改,即增加相应的修改信息的同时,员工的信息管理中的对应信息进行修改。

4)系统管理人员信息管理:

实现对相应的系统管理人员的帐号、密码等基本信息的管理功能。

5)出勤信息管理:

实现对每一位员工的出勤状况的记录,记录对应的出勤刷卡机号以及出勤时间的信息管理。

6)奖惩管理:

实现针对于不同的奖惩类型、奖惩金额等信息的管理,实现输入奖惩信息的修改相应的工资信息。

7)工资管理:

实现各个员工工资条目信息的管理。

1.2 系统功能分析

管理出勤是所需要的出勤记录刷卡机。

9)请假记录管理:

用于记录员工的请假信息,包括员工编号、请假时间、销假时间、请假天数等信息。

10)奖惩记录管理:

用于记录员工的奖惩信息,包括员工编号、奖惩类型、奖惩金额、奖惩时间等信息。

11)工资管理:

用于统计记录员工的工资信息,基本工资、将罚金、时间等。

1.3 面对用户需求分析

在该单位的人事管理系统中,最主要的两个功能就是查询信息和管理信息。系统的用户又分为员工和管理人员,因此我将该系统又分为以下若干子系统,包括员工查询子系统、管理员查询子系统、员工信息管理子系统、部门信息管理子系统、信息变更子系统、工资管理子系统,以满足不同用户的不同应用需求。

下面从细分后的各个子系统分析子系统的需求:

1)员工查询子系统:

可供员工查询与自己相关的姓名、职位、部门等基本信息,以及

各个时期的工资、奖金罚款的发放情况。

2)管理员查询子系统

可供管理员查询所管理员工的全面信息,具有管理权限。

3)员工信息管理子系统

当员工自身的基本情况,如家庭关系变更时,可由员工自行进行修改相关信息。

4)部门信息管理子系统

部门的管理员可对该部门的相关信息进行管理,执行查询、增加、删除、修改等操作。

5)信息变更子系统

员工提交相应修改信息,则将所有该员工的相关信息进行修改。6)工资管理子系统

对奖罚金额及基本工资、结算工资进行管理。

第2章面向对象分析和设计

类和对象设计如下:

第3章逻辑结构设计局部E-R图

图3.1 员工

图3.2 个人经历

图3.3 家庭关系

图3.4 部门

图3.5 职位调动

图3.6 工资

图3.7管理人员

图3.8 刷卡机

图3.9 出勤

图3.10 请假记录

图3.11 奖惩记录

全局E-R图:

类和对象向关系模式转换

1、员工(员工编号,姓名,性别,出生日期,学历,身份证号,民族,职称,部门号,职务)

2、个人经历(年份,员工编号,学习经历,任职经历)

3、家庭关系(关系编号,员工编号,亲属关系,亲属姓名)

4、管理人员(管理员帐号,职工编号,密码,级别)

5、出勤(出勤号,员工编号,上班日期,上班时间,下班时间,刷卡机号)

6、刷卡机(刷卡机号)

7、部门(部门号,部门名,领导人员,员工人数)

8、职位调动(调动编号,员工编号,调动前职务,调动后职务,调动前部门号,调动后部门号,调动日期,批复日期,调动原因)

9、奖惩记录(奖惩编号,员工编号,奖惩类型,奖惩金额,奖惩日期,批复部门号,批复日期,奖惩原因)

10、请假记录(请假编号,员工编号,请假时间,销假时间,请假天数,审批人编号)

11、工资(工资编号,员工编号,基本工资,罚款,奖金,结算工资,起始日期,截止日期,发信日期)

第4章数据库物理结构设计

4.1存取方法设计

数据库系统是多用户共享的系统,对同一个关系要建立多条存储路径才能满足多用户的多种应用要求。对于人事管理系统来说,为了提高某些属性(如:员工编号,管理员帐号,员工基本信息等)的查询速度,可以选择聚簇存取的方法,即把这些属性上具有相同值的元组集中放在连续的物理块上。这样在查询某个学院或是查询某个专业或某学年等的学生成绩或选课等时就会大大提高查询速度。因此,该系统中选择聚簇存取方法。

4.2 存储结构设计

人事管理系统是一个大型复杂的计算机网络信息系统,采用基于浏览器/服务器(B/S),客户端/服务器(C/S)混合的应用体系结构来建设教务管理系统。数据库管理系统采用Microsoft 公司推出的SQL Server 2000 或以上版本,并用SQL进行数据库的建立和数据库中数据的维护和查询。

4.3 物理设计

实现该设计的环境为Windows XP Professional + MS SQL Server 2005 或以上版本。

1、建立员工信息表

create table 员工

(

员工编号 char(4) primary key,

姓名 char(10) not null,

性别 char(2) check(性别 in('男','女')),

出生日期 datetime,

学历 varchar(32) not null,

身份证号 varchar(32) not null,

民族 varchar(16) not null,

职称 char(10),

部门号 char(4)

)

2、建立个人经历表

create table 个人经历

(

年份 datetime,

员工编号 char(4),

学习经历 varchar(50),

任职经历 varchar(50),

primary key(年份, 员工编号),

foreign key(员工编号) references 员工(员工编号)

)

3、建立家庭关系表

create table 家庭关系

(

关系编号 char(10) primary key,

员工编号 char(4) not null,

亲属关系 char(4),

亲属姓名 char(10),

亲属性别 char(2),

foreign key(员工编号) references 员工(员工编号)

)

4、建立管理人员表

create table 管理人员

(

管理员账号 char(4) primary key,

职工编号 char(4) not null,

密码 char(6) not null,

级别 char(4)check(级别 in ('管理员','系统管理员')), foreign key(职工编号) references 员工(员工编号)

)

5、建立出勤表

create table 出勤

(

出勤号 char(6) primary key,

员工编号 char(4) not null,

上班日期 datetime,

上班时间 datetime,

下班时间 datetime,

刷卡机号 char(4),

foreign key(员工编号) references 员工(员工编号)

foreign key(刷卡机号) references 刷卡机(刷卡机号) )

6、建立刷卡机表

create table 刷卡机

(

刷卡机号 char(4) primary key

)

7、建立部门表

create table 部门

(

部门号 char(4) primary key,

部门名 char(10) not null,

领导人员 char(4) not null,

员工人数 int

)

8、建立职位调动表

create table 职位调动

(

调动编号 char(6) not null,

员工编号 char(4) not null,

调动前职务 char(10),

调动后职务 char(10),

调动部门号 char(4) not null,

调动日期 datetime,

批复日期 datetime,

调动原因 varchar(50),

foreign key(员工编号) references 员工(员工编号), foreign key(调动部门号) references 部门(部门号), )

9、建立奖惩记录表

create table 奖惩记录

(

奖惩编号 char(6) not null primary key,

员工编号 char(4) not null,

奖惩类型 char(4),

奖惩金额 money,

奖惩日期 datetime,

批复部门号 char(4),

批复日期 datetime,

奖惩原因 varchar(50),

foreign key(员工编号) references 员工(员工编号), foreign key(批复部门号) references 部门(部门号) )

10、建立请假记录表

create table 请假记录

(

请假编号 char(6) not null primary key,

员工编号 char(4) not null,

请假时间 datetime,

销假时间 datetime,

请假天数 int,

审批人编号 char(4),

foreign key(员工编号) references 员工(员工编号) )

11、建立工资表

create table 工资

(

工资编号 char(6) primary key,

员工编号 char(4) not null,

基本工资 money not null,

罚款 money,

奖金 money,

结算工资 money,

起始时间 datetime,

截止时间 datetime,

发信日期 datetime,

foreign key(员工编号) references 员工(员工编号)

)

第5章数据库完整性设计

5.1 主键及唯一性索引

5.2参照完整性设计

1、将个人经历表中,将“员工编号”设置为表的外键。

2、在家庭关系中,将“员工编号”设置为表的外键。

3、在管理人员表中,将“员工编号”设置为表的外键。

4、在出勤表中,将“员工编号”设置为表的外键,再将“刷卡机号”设置为外

键。

5、在职位调动表中,将“员工编号”设置为表的外键,再将“部门”号设置为

外键。

6、在奖惩记录表中,将“员工编号”设置为表的外键。

7、在请假记录表中,将“员工编号”设置为表的外键。

8、在工资等表中的将“员工编号”设置为表的外键。

5.3 Check约束

1、员工表中,将性别进行check约束:

check(性别 in('男','女'))

2、奖惩记录表中,将奖惩类型进行check约束:

check(奖惩类型 in('奖','惩'))

5.4 触发器设计

1、在职位调动表中,建立更改员工职务的触发器

create trigger trigger_职务修改 on 职位调动 for insert

as

declare @new_员工编号 char(10),@new_调动后职务 char(10)

select @new_员工编号=员工编号,@new_调动后职务=调动后职务 from inserted update 员工 set 职务=@new_调动后职务 where 员工编号=@new_员工编号

2、在员工表中,建立插入或删除员工信息时,修改其相应部门的人数

create trigger trigger_增加员工 on 员工 for insert

as

declare @new_部门号 char(4),@new_员工人数 int

select @new_部门号=部门号 from inserted

select @new_员工人数=员工人数 from 部门

update 部门 set 员工人数=@new_员工人数+1 where 部门号=@new_部门号

create trigger trigger_减少员工 on 员工 for delete

as

declare @new_部门号 char(4),@new_员工人数 int

select @new_部门号=部门号 from deleted

select @new_员工人数=员工人数 from 部门

update 部门 set 员工人数=@new_员工人数-1 where 部门号=@new_部门号

3、在职位调动表中,当插入信息时,修改调动部门的人数信息

create trigger trigger_部门人数修改 on 职位调动 for insert

as

declare @new_前部门号 char(10),@new_现部门号 char(10),@new_调动后部门号char(4),@new_员工人数 int,@new_调动前部门号 char(4)

select @new_现部门号=调动后部门号,@new_前部门号=调动前部门号 from inserted select @new_员工人数=员工人数 from 部门

update 部门 set 员工人数=@new_员工人数+1 where 部门号=@new_现部门号

update 部门 set 员工人数=@new_员工人数-1 where 部门号=@new_前部门号

4、在奖惩记录表中,更新奖惩信息时,修改工资表中的对应的奖金、罚款

create trigger trigger_奖金 on 奖惩记录 for insert

as

declare @奖金 money,@奖惩类型 char(2),@员工编号 char(4)

select @奖金=奖惩金额,@员工编号=员工编号,@奖惩类型=奖惩类型 from inserted begin

if(@奖惩类型='奖')

update 工资 set奖金=@奖金 where 员工编号=@员工编号

end

create trigger trigger_罚款 on 奖惩记录 for insert

as

declare @罚款 money,@奖惩类型 char(2),@员工编号 char(4)

select @罚款=奖惩金额,@员工编号=员工编号,@奖惩类型=奖惩类型 from inserted begin

if(@奖惩类型='罚')

update 工资 set 罚款=@罚款 where 员工编号=@员工编号

end

5、在工资表中,奖金、罚款发生变动时,更新相应的结算工资

create trigger [dbo].[trigger_update_a] on [dbo].[工资] for update as begin

if UPDATE(罚款)

update 工资

set 结算工资 = 基本工资-罚款+奖金

from 工资

end

create trigger [dbo].[trigger_update_a] on [dbo].[工资] for update as begin

if UPDATE(奖金)

大数据实验报告

学生实验报告册 (理工类) 课程名称:大型数据库技术专业班级:12计算机科学与技术(1)学生学号:学生姓名: 所属院部:计算机工程学院指导教师:陈爱萍

2014——20 15学年第2 学期 金陵科技学院教务处制

实验报告书写要求 实验报告原则上要求学生手写,要求书写工整。若因课程特点需打印的,要遵照以下字体、字号、间距等的具体要求。纸张一律采用A4的纸张。 实验报告书写说明 实验报告中一至四项内容为必填项,包括实验目的和要求;实验仪器和设备;实验内容与过程;实验结果与分析。各院部可根据学科特点和实验具体要求增加项目。 填写注意事项 (1)细致观察,及时、准确、如实记录。 (2)准确说明,层次清晰。 (3)尽量采用专用术语来说明事物。 (4)外文、符号、公式要准确,应使用统一规定的名词和符号。 (5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处。 实验报告批改说明 实验报告的批改要及时、认真、仔细,一律用红色笔批改。实验报告的批改成绩采用百分制,具体评分标准由各院部自行制定。 实验报告装订要求 实验批改完毕后,任课老师将每门课程的每个实验项目的实验报告以自然班为单位、按学号升序排列,装订成册,并附上一份该门课程的实验大纲。

实验项目名称:Oracle数据库安装与配置实验学时: 1 同组学生姓名:实验地点:1316 实验日期:2015/3/27 实验成绩: 批改教师:陈爱萍批改时间:

实验1:Oracle数据库安装与配置 一、实验目的和要求 (1)掌握Oracle数据库服务器的安装与配置。 (2)了解如何检查安装后的数据库服务器产品,验证安装是否成功。 (3)掌握Oracle数据库服务器安装过程中出现的问题的解决方法。 (4)完成Oracle 11g数据库客户端网路服务名的配置。 (5)检查安装后的数据库服务器产品可用性。 (6)解决Oracle数据库服务器安装过程中出现的问题。 二、实验设备、环境 设备:奔腾Ⅳ或奔腾Ⅳ以上计算机 环境:WINDOWS 7、ORACLE 11g中文版 三、实验步骤 (1)从Oracle官方网站下载与操作系统匹配的Oracle 11g数据库服务器和客户机安装程序。 (2)解压Oracle 11g数据库服务器安装程序,进行数据库服务器软件的安装。

数据结构大作业报告

数据结构大作业报告 数据结构大作业实验报告课程名称:数据结构设计题目:客户去银行储蓄模拟程序一( 实验题目 (1)内容描述:编写一个程序反映客户到银行储蓄的过程。 (2)基本要求:要实现以下功能:1:排队 2:储蓄 3:查看排队4.:删除自己所排的队 5.不再排队,剩下的客户依次储蓄 6:下班 二( 实验的工程组成图和程序结构图 main bank 本工程的组成结构如左图所示,程序结构图如右图所示。三( 工程所包含的函数的功能描述 Bank():模拟客户到银行去储蓄的过程。客户排队储蓄,所以要用到一个队列, 这里设计了一个不带头结点的单链表作为队列。 四( 实验工程的算法描述及流程图 //客户排队去银行储蓄,用到了队列的知识,这里设计了一个不带头结点的单链表作为队列来完成排队储蓄过程 #include

#include typedef struct qnode { int data; struct qnode *next; } QNode; //定义链队结点类型 typedef struct { QNode *front,*rear; } QType; //定义链队类型 void bank() //模拟客户储蓄的过程 { int cho,onwork=1,no,find; QType *q; //定义链队类型的指针 QNode *p,*r; //定义链队结点的指针 q=(QType *)malloc(sizeof(QType)); //申请链队的空间 q->front=q->rear=NULL; //创建空队 while (onwork==1) //循环执行 { printf("1:排队 2:储蓄 3:查看排队4:删除自己所排的队 5:不再排队,剩下的客户依次储蓄 6:下班请选择:"); scanf("%d",&cho); switch(cho) { case 1://排队

大作业报告格式

《供配电技术课程大作业》 报告书 题目:高低压电气设备的 维护与故障处理指导教师: 姓名: 学号: 日期: 机电工和系2013-2014学年第2学期

报告书格式要求: 一、报告前置部分 (一)摘要内容包括研究目的、方法、结果、结论(300字~400字)四部分 (二)格式要求 1.中文摘要: “摘要”(黑体三号,居中),摘要正文(居左,首行缩进两字,宋体五号)。“关键词”(黑体小四号,居左顶格,单独占行),关键词正文(宋体五号),关键词为报告研究内容3~8核心专有名词,词与词之间用分号间隔。 2.外文摘要:独占一页 “Abstract”(Times New Roman,三号,加粗,居中),Abstract正文(居左顶格,Times New Roman,五号); “Key words”(Times New Roman,小四号,加粗,居左顶格,单独占行),Key words正文(居左顶格,Times New Roman,五号),与中文关键词对应,词与词之间用分号间隔。 二、报告主体部分 (一)正文格式要求 1.页眉(宋体,五号,居中),由“学生姓名:论文题目”格式构成。 2.页码(页面底端(页脚),右侧)。 3.章条序码(阿拉伯数字,小圆点间隔,末尾不加小圆点,左顶格,编号后空一个字距)第一级0,1, 2, 3,…(黑体,小二号) 第二级1.1,1.2,… 2.1,2.2,… 3.1,3.2,……(黑体,小三号) 第三级 1.1.1,1.1.2,…1.2.1,1.2.2,…2.1.1,2.1.2,…2.2.1, 2.2.2,… 3.1.1,3.1.2,…3.2.1,3.2.2,……(黑体,四号) 如在条以下仍需分层,则通常用a,b,…或1),2),…编序,左空2个字距。 4.前言、引言不编序号 (二)图、表及公式格式要求 1.图表字体(宋体、五号),图表名(中外文对照、宋体、五号、居中),图表按章编号(如图1-1、表2-2等),图编号及图名置下,表编号及表名置上。 插图宽度不宜超过10cm,有刻度的坐标图不加箭头,标值线朝里,其标值数字尽量不超过3位数(如用30km代替30000m)或小数以后不多于一个“0”(如用5μg 代替0.005mg);标目中的物理量的符号用斜体,单位符号用正体,纵坐标标目、标值逆时针旋转九十度书写;图中坐标线、尺寸线、引线0.5磅,轮廓线、函数线等主要部分0.75磅;文中图片要清晰。 表格的绘制均用三线表,表内无斜线、竖线,结构比较复杂的表可增加不通长的辅助线;表头中量的写法要规范,量的表示法不允许出现两条斜线(如:动量矩单位kg.m2/s,在表中应为L/kg.m2.s-1);表中“空白”代表未测或无此项,“-”代表未发现,“0”代表实测数据为零。 2.公式。公式统一用Microsoft公式3.0在系统默认状态下编辑,居中放置,其前的“解”、“假设”等文字顶格书写,公式序号按章排,加圆括号,居行尾。如“(1-1)”、“(2-1)”。公式换行书写时与等号对齐,凡正文中未提到的公式可不排序。 (三)引用和注释 1.引用。引用参考文献,在正文引用位置右上角标“[1]”、“[2]”,依据出现先后次序流水编号,相同文献多处引用,统一用首次编号。

黑大数据库实验报告资料

黑龙江大学 “数据库系统原理课程设计”总结报告 学院软件学院 年级2014级 专业软件工程 学号20143983 姓名陆芝浩 报告日期2016.11.9 成绩 黑龙江大学软件学院

1、开发环境 操作系统:Windows7 编程语言环境:VC++6.0 2、DBMS系统架构 3、DBMS主要功能模块 1、实现SQL语句中的Create Table建表语句,建立相应的数据库表,并生成相应的数据字典文件和数据文件。 2、实现alter table表模式的修改功能: ①能够为已建立的表添加属性。 ②能够从已建立的表中删除属性。

3、实现drop table删除表功能。 4、实现create index创建索引的功能。 5、实现drop index删除索引的功能。 6、实现insert可以向已经创建的表插入元组。 7、实现delete从已经创建的表中删除元组。 8、实现update修改表中的数据。 9、实现SELECT语句,包括: 实现单表全属性查询。 实现单表单属性查询。 实现多表的连接全属性查询。 实现多表的连接和选择条件的全属性查询。 实现多表的连接的单属性查询。 实现多表的连接和选择的单属性查询。 实现单表的选择的单属性查询。 实现单表的选择的全属性查询。 10、利用启发式关系代数优化算法进行查询优化。 11、建立访问权限,根据数据字典(DD)实现对数据库的安全性检查和完整性约束的机制。 3.1 SQL语言的词法和语法分析 (1)功能介绍 通过编译原理的知识对输入的SQL语句进行词法分析,将SQL语句拆分为若干个单词,对其进行语法分析,确定输入的SQL语句的含义. (2)相关理论 利用编译原理的相关知识,对输入的SQL语句进行模仿SQL语言的词法及语法结构的分析。

数据结构大作业要求

数据结构实验讲义 一实验步骤 随之计算机性能的提高,它所面临的软件开发的复杂度也日趋增加。然而,编制一个10,000行的程序的难度绝不仅仅是一个5,000行的程序两倍,因此软件开发需要系统的方法。一种常用的软件开发方法,是将软件开发过程划分为分析、设计、实现和维护四个阶段。虽然数据结构课程中的实习题的复杂度远不如(从实际问题中提出来的)一个“真正的,,软件,但为了培养一个软件工作者所应具备的科学工作的方法和作风,我们制订了如下所述完成实习的五个步骤:’ (一)问题分析和任务定义 通常,实习题目的陈述比较简洁,或者说是有模棱两可的含义。因此,在进行设计之前,首先应该充分地分析和理解问题,明确问题要求做什么?限制条件是什么。注意:本步骤强调的是做什么?而不是怎么做。对问题的描述应避开算法和所涉及的数据类型,而是对所需完成的任务作出明确的回答。例如:输入数据的类型、值的范围以及输入的形式;输出数据的类型、值的范围及输出的形式;若是会话式的输入,则结束标志是什么?是否接受非法的输入?对非法输入的回答方式是什么等。这一步还应该为调试程序准备好测试数据,包括合法的输入数据和非法形式的输入数据。 (二)数据类型和系统设计 在设计这一步骤中需分逻辑设计和详细设计两步实现。逻辑设计指的是,对问题描述中涉及的操作对象定义相应的数据类型,并按照以数据结构为中心的原则划分模块,定义主程序模块和各抽象数据类型;详细设计则为定义相应的存储结构并写出各函数的伪码算法。在这个过程中,要综合考虑系统功能,使得系统结构清晰、合理、简单和易于调试,抽象数据类型的实现尽可能做到数据封装,基本操作的规格说明尽可能明确具体。作为逻辑设计的结果,应写出每个抽象数据类型的定义(包括数据结构的描述和每个基本操作的规格说明),各个主要模块的算法,并画出模块之间的调用关系图。详细设计的结果是对数据结构和基本操作的规格说明作出进一步的求精,写出数据存储结构的类型定义,按照算法书写规范用类c语言写出函数形式的算法框架。在求精的过程中,应尽量避免陷入语言细节,不必过早表述辅助数据结构和局部变量。 (三)编码实现和静态检查 编码是把详细设计的结果进一步求精为程序设计语言程序。程序的每行不要超过60个字符。每个函数体,即不计首部和规格说明部分,一般不要超过40行,最长不得超过60行,否则应该分割成较小的函数。要控制if语句连续嵌套的深度。其他要求参见第一篇的

C语言大作业报告范文

学院XX学院

目录 1 摘要 (3) 1.1设计题目 (3) 1.2设计容 (3) 1.3开发工具 (3) 1.4应用平台 (3) 2 详细设计 (3) 2.1程序结构 (3) 2.2主要功能 (3) 2.3函数实现 (3) 2.4开发日志 (4) 3 程序调试及运行 (4) 3.1程序运行结果 (4) 3.2程序使用说明 (4) 3.3程序开发总结 (4) 4 附件(源程序) (4)

1 摘要 1.1 设计题目 (A)求最大数;(B)高次方数的尾数 1.2 设计容 (A)求555555的约数中最大的三位数; (B)求13的13次方的最后三位数1.3 开发工具 Visual C++ 6.0和Win32。 1.4 应用平台 Windows XP 32位 2 详细设计 2.1 程序结构 (A)求最大数

定义变量a、b、c,a从100至999递增,b为555555,用b除以a,判断是否可以整除,若可以,则把a的值赋给c,a自加1;若不可,a自加1。重复以上步骤,直到a>999,输出c。循环语句采用for 循环。 (B)高次方数的尾数

定义变量i、j,i从1至13递增,j初值为1。用j乘以13,用得到的乘积除以1000并取其余数,赋给j,i自加1。重复以上步骤,直到i>13,输出j。循环语句采用for循环。

2.2 主要功能 程序功能:(A)求555555的约数中最大的三位数; (B)求13的13次方的最后三位数。 原理和方法: (A)题目的原理和方法:因为要求的是三位数,就用555555从小到大依次除以100到999的所有数,并判断能否整除,最后一个可以整除555555的数即为所求。循环语句采用for循环。 (B)题目的原理和方法:乘积的最后三位数只与乘数和被乘数的后三位数有关,因此用1乘以13,再除以1000并取余数,用余数乘以13,再除以1000并取余数,依次进行下去,累乘13个13后除以1000取得的余数即为所求。循环语句采用for循环。 2.3 函数实现 (A)求最大数 int a,b=555555,c; /*定义变量,赋初值*/ for(a=100;a<=999;a++) /*FOR循环*/ { if(b%a==0) /*利用IF语句判断b是否可以被a整除*/ c=a; /*将555555的约数赋给c*/ } printf("%d\n",c); /*输出c*/ (B)高次方数的尾数 int i,j=1; /*定义变量,赋初值*/ for(i=1;i<=13;i++) /*FOR循环*/ { j=j*13%1000; /*将j乘以13的乘积的后三位数赋给j*/ } printf("%d\n",j); /*输出j*/ 2.4 开发日志 (A)选定这个题目后,我先分析此题用何种算法完成,确定了使用FOR循环并限定除数围,然后画出程序框图,再一步步编写源代码。调试过程很顺利,只有一个地方忘加了“;”。运行程序后,结果非常满意。 (B)这个题目不难,但是也不简便,我想到只取三位数的方法,并使用FOR循环,然后画出程序框图,再一步步编写源代码。调试过程发现对其中一个变量的初值是1还是13有待解决,分析程序后发现应该用1,然后进一步调试,运行,直至结果正确。

有限元分析大作业报告

有限元分析大作业报告 试题1: 一、问题描述及数学建模 图示无限长刚性地基上的三角形大坝,受齐顶的水压力作用,试用三节点常应变单元和六节点三角形单元对坝体进行有限元分析,并对以下几种计算方案进行比较: (1)分别采用相同单元数目的三节点常应变单元和六节点三角形单元计算; (2)分别采用不同数量的三节点常应变单元计算; (3)当选常应变三角单元时,分别采用不同划分方案计算。 该问题属于平面应变问题,大坝所受的载荷为面载荷,分布情况及方向如图所示。 二、采用相同单元数目的三节点常应变单元和六节点三角形单元计算 1、有限元建模 (1)设置计算类型:两者因几何条件和载荷条件均满足平面应变问题,故均取Preferences 为Structural (2)选择单元类型:三节点常应变单元选择的类型是Solid Quad 4 node182;六节点三角形单元选择的类型是Solid Quad 8 node183。因研究的问题为平面应变问题,故对Element behavior(K3)设置为plane strain。 (3)定义材料参数:弹性模量E=2.1e11,泊松比σ=0.3 (4)建几何模型:生成特征点;生成坝体截面 (5)网格化分:划分网格时,拾取lineAB和lineBC,设定input NDIV 为15;拾取lineAC,设定input NDIV 为20,选择网格划分方式为Tri+Mapped,最后得到600个单元。

(6)模型施加约束:约束采用的是对底面BC 全约束。大坝所受载荷形式为Pressure ,作用在AB 面上,分析时施加在L AB 上,方向水平向右,载荷大小沿L AB 由小到大均匀分布。以B 为坐标原点,BA 方向为纵轴y ,则沿着y 方向的受力大小可表示为: }{*980098000)10(Y y g gh P -=-==ρρ 2、 计算结果及结果分析 (1) 三节点常应变单元 三节点常应变单元的位移分布图 三节点常应变单元的应力分布图

大型数据库管理实验报告4

武汉轻工大学 经济与管理学院实验报告 实验课程名称大型数据库管理 实验起止日期2019.11.5至2019.12.10 实验指导教师程红莉 实验学生姓名学生班级学号物流管理1702 实 验 评 语 实验 评分 教师 签名 年月日

实验项目名称数据完整性实验日期2019.12.10 学生姓名班级学号物流管理1702 一、预习报告(请阐述本次实验的目的及意义) 1.熟悉通过SQL对数据进行完整性控制。 2.完成书本上习题的上机练习。 二、实验方案(请说明本次实验的步骤和进程) 1.用Constraint和Check建立完整性约束条件 教材164页例[7] Student表的ssex 只允许取‘男’或‘女’ create table student1 (sno char(9) primary key, sname char(8) not null, sex char(2) check(sex in('男','女')), sage smallint, sdept char(20) ); 教材164页例[8] create table sc1 (sno char(9), cno char(4), grade smallint check(grade>=0 and grade<=100), primary key(sno,cno), foreign key(sno)references student1(sno), foreign key(cno)references course(cno) ); 教材164页例[7]、例[8](给学生表的性别增加约束条件,即只允许“男”或“女”。可用语句: alter table student add constraint course1 check(sex in('男','女')) alter table sc add constraint course2 check (score>=0 and score<=100) go

大数据结构大作业报告材料

数据结构课程设计课题名称 专业名称 学生姓名 学号+电话 指导教师

评分细则

目录 评分细则----------------------------------------------------------------------------------------------------------------- 2 一、课题描述 ---------------------------------------------------------------------------------------------------------- 4 二、需求分析 ---------------------------------------------------------------------------------------------------------- 4 2.1 ------------------------------------------------------------------------------------------------------------------ 4 2.2- ------------------------------------------------------------------------------------------------------------------4 2.3--------------------------------------------------------------------------------------------------------------------4 三、概要设计 ---------------------------------------------------------------------------------------------------------- 4 3.1 结构分析 ----------------------------------------------------------------------------------------------------------- 4 3.2函数------------------------------------------------------------------------------------------------------------ 4 3.2.1 malloc() --------------------------------------------------------------------------------------------- 4 3.2.2getchar() ----------------------------------------------------------------------------------------------------- 5 3.2.3 list_create() ------------------------------------------------------------------------------------------------ 5 3.2.4 list_disp() --------------------------------------------------------------------------------------------------- 5 3.2.5 list_sort() --------------------------------------------------------------------------------------------------- 5 四、详细设计 ---------------------------------------------------------------------------------------------------------- 5 4.1课题分析 ----------------------------------------------------------------------------------------------------- 5 4.1.1选择 ------------------------------------------------------------------------------------------------- 5 4.1.2冒泡 --------------------------------------------------------------------------------------------------------- 5 4.1.3 堆------------------------------------------------------------------------------------------------------------ 6 4.1.4 快速--------------------------------------------------------------------------------------------------------- 6 4.1.5 基数--------------------------------------------------------------------------------------------------6 4.1.6 希尔--------------------------------------------------------------------------------------------------------- 6 4.1.7 归并--------------------------------------------------------------------------------------------------6 4.2课题实现 ----------------------------------------------------------------------------------------------------- 7 五、测试数据及结果------------------------------------------------------------------------------------------------- 9 六、调试分析及总结----------------------------------------------------------------------------------------------- 10

《.net程序设计》大作业报告模板

《.net程序设计》大作业报告学院信息科学与技术学院 专业 学号 学生姓名 指导教师 2017年12月

摘要 目前各种资格认证考试的在线考试通过无纸化考试方式实现了跨越时间、空间的限制,节省了大量的物力财力。在线考试和即时阅卷提高了考试效率,减轻了考生和考务人员的负担。学校的传统考试沿用纸质出题、打印,考试、监考、人工阅卷的流程,中间资源浪费较多。相比而言,在线考试能够更好的服务于学生,满足考试的需求,是网络教育的发展重点。在线考试涉及管理学生考试信息、试题信息的维护和更新,是能够实现的有效的考试方式。在线考试是学校网络教育发展的必然趋势。 本文以开发适用于学校的在线模拟考试系统为例,针对试题维护、随机组卷、在线考试进行了开发和测试,进行了相关的探索和研究。 关键词:JSP 在线考试维护

目录 第1章需求分析 (1) 1.1 XXX (1) 第2章系统模块设计 (3) 2.1 XXX (3) 第3章数据库设计 (6) 3.1 XXX (6) 第4章系统实现 (16) 4.1 登录模块 (16) 第5章心得体会 (36) 参考文献 (37) 附录(源代码) (38)

第1章需求分析 页面设置:A4,上、下页边距3cm,左、右页边距2.5cm 正文:宋体小四号字,首行缩进、固定行距20磅 本章最后说明每个组员的具体分工

第2章系统模块设计功能框图参见如下格式: 图2.1 系统的总体结构

第3章数据库设计 数据表采用如下任一种格式: 表3.1 学生表(Student) 表3-1 考生信息表 字段名字段类型可否为空说明 Id Bigint(8) not null 主键自增 Name Varchar(20) not null 姓名 Sex Varchar(2) not null 性别 Answer Profession CardNo Grade Varchar(50) Varchar(30) Varchar(18) Varchar(18) not null not null not null not null 问题答案 专业 身份证号 所属班级

大型数据库实验报告

中南大学大型数据库实验报告 课程名称大型数据库技术指导教师 姓名 学号 专业班级

《大型数据库技术》实验三 1.写一个PROC程序,查询并显示表Agents的所有记录。要求定义一个数组类型的宿主变量,一次性把所有记录从服务器端传送到客户端,然后逐行显示。 Java代码如下: public void selectAgents() throws Exception { Connection conn = this.getConnection(); Statement stmnt = conn.createStatement(); ResultSet set = stmnt.executeQuery("select * from Agents"); System.out.println("查询结果如下:\n"); while (set.next()) { String id = set.getString("AID"); String name = set.getString("ANAME"); String city = set.getString("CITY"); int percent = set.getInt("PERCENT"); System.out.println("aid:"+ id + " aname:"+ name + " city:" + city + " percent:" + percent); } set.close(); stmnt.close(); conn.close(); } 测试代码: public static void main(String[] args) throws Exception { String url = "jdbc:oracle:thin:@localhost:1521:ORCL"; String user = "jelly"; String pwd = "csusoft"; DBOpers db = new DBOpers(url, user, pwd); db.selectAgents(); } 测试结果: 2.写一个PROC程序,根据用户输入的城市,查询并逐行显示该城市所有顾客的编号、名称和折扣。如果该城市中不存在任何顾客,则调用一个错误处理函数,函数中显示错误信息:“该城市中不存在顾客”。 Java代码如下:

数据结构大作业

数据结构课程设计 题目:长整数四则运算 班级:信管12-1 学号:1201050642 姓名:庄术洁 指导老师:刘晓庆 2014年5月22日

一、需求分析 1、利用双向循环链表实现长整数的存储,每个结点含一个整数变量。任何整形变量的范围是—(2^15—1)~(2^15—1)。输入和输出形式:按中国对于长证书的表示习惯,每四位一组,组间用逗号隔开。 2、测试数据 (1) 0; 0;应输出“0” (2)—2345,6789;—7654,3211;应输出“—1,0000,0000”。 (3)—9999,9999;1,0000,0000,0000;应输出“9999,0000,0001”。 (4)1,0001,0001;—1,0001,0001;应输出“0”。 (5)1,0001,0001;—1,0001,0000;应输入“1”。 (6)—9999,9999,9999;—9999,9999,9999;应输出“—1,9999,9999,9998”。 (7)1,0000,9999,9999;1应输出“1,0001,0000,0000”。 二、概要设计 为上述程序功能,应以有序表实现长整数的存储,为此,需要抽象数据类型:有序表

(8)有序表的抽象数据类型定义为: ADT Dulinklist{ 数据对象: D={ai|ai为带符号整数,1,2,…,n,n>=0} 数据关系:R1={|ai-1,ai属于集合D,ai-1

西电数据结构大作业

题目:数据结构上机报告学院:电子工程学院 专业:信息对抗技术 学生姓名:甘佳霖 学号:14020310092

西安电子科技大学 数据结构课程实验报告实验名称线性表 电子工程学院 1402031 班Array姓名甘佳霖学号 14020310092 同作者 实验日期 2017 年 3 月 18 日

实验一线性表 一、实验目的 1.熟悉线性表的顺序和链式存储结构 2.掌握线性表的基本运算 3.能够利用线性表的基本运算完成线性表应用的运算 二、实验要求 1.设有一个线性表E={e1, e2, … , e n-1, e n},设计一个算法,将线性表逆置,即使元素排列次序颠倒过来,成为逆线性表E’={ e n, e n-1 , … , e2 , e1 },要求逆线性表占用原线性表空间,并且用顺序表和单链表两种方法表示,分别用两个程序来完成。 2.已知由不具有头结点的单链表表示的线性表中,含有三类字符的数据元素(字母、数字和其他字符),试编写算法构造三个以循环链表表示的线性表,使每个表中只含有同一类的字符,且利用原表中的结点空间,头结点可另辟空间。 三、设计思路 1.顺序表做逆置操作时将对应的首尾元素位置交换,单链表的指针end指向链表的末尾,指针start指向链表头结点,指针s用来找到指向end节点的节点,将指向链表末尾和头结点的存储内容交换,然后头结点指针指向下一节点,s指针从start节点开始遍历寻找指向end 指针的节点,并将end指针赋值为s指针,就完成了单链表的逆置,可以看出单链表和顺序表都可以完成线性表的逆置。 2.分解单链表的实现思路是首先新建3个循环链表,然后顺序遍历单链表,ASCII码判断链表中的元素属于哪一类元素,然后将这个元素添加到对应的循环链表中,从而实现分解单链表的功能。 四、运行结果 1.单链表逆置:

设计模式大作业报告

《设计模式》课程大作业报告 姓名:陈明 专业:软件工程 班级:1202 日期:2015年5月29日

西安欧亚学院2014—2015学年第二学期考试试卷 专业:软件工程 课程:设计模式 年级:12级 完成一个综合项目程序,其中使用所学设计模式两个或者两个以上。要求在文档中首先给出项目程序完成的功能或者解决的问题,然后详细说明模式使用的具体情况,即角色和相应程序代码。文档赋分标准如下: 1、程序功能阐述明确,分析清楚。(15分) 2、使用两种设计模式,使用得当,并给出相应的角色及程序代码,程序代码有恰当的注释。(60分) 3、文档格式正确,排版清晰。(15分) 4、如果使用超过两种设计模式,并且使用正确。(10分) 说明:以上总分为个人的期末成绩,本课程个人总成绩=平时成绩*40%+期末成绩*60%。 号_____________ 班级___________ 姓名________ 考场号____ 座位号____ - - - - - - - - - - - - - - - - - - - - - - - 密 ○- - - - - - - - - - - - - - - - - - - - - - - - 封 ○ - - - - - - - - - - - - - - - - - -- - - - - - 线 ○ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

图书馆管理系统 数据结构大作业

封面 数据结构课程设计报告 图书管理信息系统

二〇一三年十二月 本程序是图书管理信息系统的实现,具体功能包括读者注册、登录、新书增添、图书查询、图书搜索、借还书、读存盘等。 程序流程如下: 任务分析: 1.新书入库: 新到书籍入库包含几方面的操作:首先查询该书名的书籍在图书馆信息中是否已经存在,若存在,则增加可借数量和总库存量,若不存在,则新增加概述信息,从界面输入书籍的编号(0~999999的长整型)、书名(字符串类型)、作者名(字符串类型)、出版社信息(字符串类型)、出版日期(整型)、该书的现存量(整型)、该书的总量(整型)。输入该信息之后,将该节点插入到书籍信息链表中去。该节点的插入位置根据查找,找到合适的位置插入,这样可以保证整个数据都是有序的,方便查找。 2.读者注册: 没有账号和密码读者和管理员都不能登录系统,系统默认第一个注册系统的是系统管理员,借阅号为1000,权限是1,并输入密码000000及基本信息,并将所借书信息区全部置零。不是第一个注册的读者,借阅号从1000往后顺延,自己设置密码,权限为0,其余信息与管理员相同,因此登陆之后,管理员可以看到“入库”菜单选项,普通读者不能看到该选项。

3.借书: 书籍借阅主要涉及存书库和读者信息库的更新。用户首先登陆系统,通过3种查询方式查询该书是否存在,并判断该书的剩余数量是否大于零,最后查询该读者是否已经借满书籍。若以上条件都满足,则将该书编号存入该读者的借阅信息区,将该读者的可借书数量减1,该存书的可借数量减1。 4.还书: 读者登录后按书名号来归还所借书籍,若书名号正确并且确认归还该书籍,则从读者的借书区删除该书籍,读者的可借书数量加1,将该书的可借数量增加1,然后返回。 5.信息查询: 信息查询分为读者信息查询和书籍信息查询,读者信息查询是在读者登录之后,可以显示本人的基本信息以及借书状况(所借书的本数、可借书本数以及所借书的信息),还可查询书籍信息,可根据书籍的编号来查找书籍、根据书名来查找书籍、根据作者名来查询书籍。查询到该书籍后显示是否借阅该书籍。 算法设计: 1、查找 查找分按书名查找、按作者查找和按书号查找。按书名查找是采用遍历线性链表的方式,从首元结点开始向下遍历,检查输入的书名和已存的书名是否匹配,如果匹配,则将该书籍的指针返回,然后查找结束。若直到最后也没找到,则返回空。按作者查找则根据输入的作者名,从书籍链表的首元结点开始遍历,检查记录中的读者信息和输入的是否匹配,若找到匹配的,则输出该书籍信息,然后继续向下遍历,直到链表尾部,查找结束。按书号查找则是根据建立的索引表来查找记录。 2、读者信息存储 读者信息采用线性单链表存储,设置头结点,头结点不存储数据,初始化时头结点->next 设置为空,然后每从文件中读取一组数据,则将该数据存入新开辟的空间,链接到读者信息链表中,再将该数据的next置空。 3、图书信息存储 书籍信息存储采用单链表存储,设置头结点,头结点不存储数据,头结点的next为空,初始化时,从文件中读取一个格式化的数据,则将该数据存入新开辟的空间,并将该节点链接到链表中去,将next置空。 程序主要函数: 1.增加图书:v oid insert(book*bhead);输入书号,判断是否合法,然后输入图书信息。 流程图如下

多媒体大作业报告

学号 多媒体技术大作业 2014 ~2015 学年第一学期 教学系: 专业班级: 指导教师: 学生姓名: 成绩: 2014 年10 月07 日

大作业任务书学生姓名专业班级题目: 宫崎骏眼中的美好世界

初始条件: 1、掌握多媒体技术的基本技能,包括图片处理、动画设计、程序开发、视频音频处理; 2、具有多媒体开发的能力。 要求完成的主要任务: 1.设计制作一个多媒体作品题目自拟,所用软件不限,最好结合两个和两个以上软件, 如:Photoshop、Flash、Premiere、会声会影及authorware等等; 题目范围:(1)电影剪辑(片头、字幕、背景音乐、片尾) (2)动画设计(动画片段、网络广告) (3)平面设计(海报、广告、创意作品) (4)多媒体应用程序开发(电子书、电子相册) 2.需明确多媒体的主题和风格,明确制作的目的; 3.根据确定的主题和风格,搜集相关的素材(背景音乐、风景图片、视频动画等。); 4.合理设计多媒体的表现形式,明确各部分的重点及内容; 5.设计与主题相匹配的素材链接方式及匹配文字、图像等; 6.按照要求完成设计报告。 时间安排: 要求在本学期第10周(11月07日~11月14日)完成。时间安排1周。课程设计提交应当提供源程序、应用程序和设计报告,尽可能的当面演示。

目录 一、设计效果图(主界面效果图) (5) 二、设计思路与步骤 (9) 1.设计思路(含设计策划、素材收集与准备,素材的预处理等部分) (9) 2.设计步骤(配合步骤的文字描述和关键截图) (11) 视频处理: (11) 图片按钮处理: (12) 音频处理: (14) 视频制作: (15) Authorware程序文件制作 (15) 三、心得及体会(不少于500字) (18)

数据库实验报告(一)

滨江学院 题目数据库实验报告(一) 学生姓名 学号 系部电子工程系 专业通信工程 指导教师林美华 二O一三年十二月十八日

实验一数据库的定义实验 本实验需要2学时。 一、实验目的 要求学生熟练掌握和使用SQL、SQL Server企业管理器创建数据库、表、索引和修改表结构,并学会使用SQL Server 查询分析器接收语句和进行结果分析。 二、实验内容 1 创建数据库和查看数据库属性。 2 创建表、确定表的主码和约束条件。为主码建索引。 3 查看和修改表结构。 4 熟悉SQL Server企业管理器和查询分析器工具的使用方法。 三、实验步骤 1 基本操作实验 (1) 使用企业管理器按教材中的内容建立图书读者数据库。 (2)在企业管理器中查看图书读者数据库的属性,并进行修改,使之符合要求。 (3)通过企业管理器,在建好的图书借阅数据库中建立图书、读者和借阅3个表,其结构为; 图书(书号,类别,,作者,书名,定价,作者). 读者(编号,,单位,性别,). 借阅(书号,读者编号,借阅日期) 要求为属性选择合适的数据类型,定义每个表的主码.是否允许空值和默认值等列级数据约束。 (4)在企业管理器中建立图书、读者和借阅3个表的表级约束.每个表的主码约束.借阅表与图书表间、借阅表与读者表之间的外码约束,要求按语义先确定外码约束表达式.再通过操作予以实现.实现借阅表的书号和读者编号的惟一性约束:实现读者性别只能是“男”或“女”的Check(检查)约束。 2 提高操作实验 (一) 将教材中用SQL描述的建立学生--课程操作.在SQL Server企业管理器中实现。库中表结构为: 学生(学号,,年龄,性别,所在系). 课程(课程号,课程名,先行课). 选课(学号,课程号,成绩) 要求: 1)建库、建表和建立表间联系。, 2)选择合适的数据类型。 3)定义必要的索引、列级约束和表级约束. 四、实验方法 l创建数据库 (1)使用企业管理器创建数据库的步骤 1)从“开始”菜单中选择;“程序”“Microsoft SQL2000”“企业管理器”.

相关文档
最新文档