当前位置:文档之家› 《数据结构》实验指导书 广东工业大学信息工程学院

《数据结构》实验指导书 广东工业大学信息工程学院

《数据结构》实验指导书 广东工业大学信息工程学院
《数据结构》实验指导书 广东工业大学信息工程学院

《数据结构》实验指导书

广东工业大学信息工程学院

下面介绍一下数据结构实验环境的启动,教材里的算法使用类C语言描述,具体实现需要支持ANSI C++标准的编译器。考虑到同学们的基础和使用习惯,我们利用Windows环境下的Visual C++来进行实验。

首先启动Visual C++,从开始——程序——Visual C++,启动好Visual C++界面如图1所示:

点击菜单“文件”出现下拉菜单,选择“新建”,如下图:

在上面的界面里,我们选择Win32 Console Application选项,并在工程栏目里输入一个文件名,位置根据自己的保存路径设置即可,确定后回车,出现如下界面:

再点击完成,出现下面的界面:

点击“OK”,出现如下界面:

在上面界面里,我们开始做实验时,只要通过“文件”菜单来添加源文件或头文件进入到程序编辑状态,如下图所示:

点击“OK”后进行程序编辑窗口,如下所示:

这时就可以编辑程序了。实验时将头文件(.h后缀文件)放在header files 里,而源文件(.cpp后缀文件)放在source files里进行编辑调试。

实验一:线性表的存储结构与顺序表的存储实现

实验内容:编写一个程序实现两个有序(从小到大)顺序表合并成为一个顺序表,合并后的结果放在第一个顺序表中。

实验目的:了解并掌握线性表的逻辑结构特性,通过实验掌握顺序存储结构的描述方法及用高级语言进行编程实现的方法。

实验步骤:

1.定义顺序表类型和结构:

首先要想好自己定义的顺序表叫什么名称,顺序表结构里包括有什么项目,每一项该是什么类型,如:

typedefstruct{

ElemType *elem;

int length;

intlistsize;

} SqList;

2.将定义好的顺序表初始化,如:

Status InitList_Sq(SqList&L){

L.elem=(ElemType )malloc(LIST_INIT_SIZE*sizeof(ElemType));

if(!L.elem) exit(OVERFLOW);

L.length=0;

L.listsize=LIST_INIT_SIZE;

return OK;

}

3.创建顺序表,如:

void Create_Sq(SqList&L){ //创建顺序表

inti,n;

printf("创建一个有序表:\n");

printf("输入有序表中元素的个数:");

scanf("%d",&n);

L.length=n;

for(i=0;i

printf("输入第%d个元素的值:",i+1);

scanf("%d",&L.elem[i]);

printf("\n");

}

}

4.编写顺序表的元素输出函数

voidDisp_Sq(SqList L){

inti,n;

n=L.length;

for(i=0;i

printf("%5d",L.elem[i]);

printf("\n");

}

5.编写合并程序,实现题目要求的合并功能

void Combine(SqList&La, SqList&Lb)

{

//把两个有序表合为一个函数体请同学们自己编

}

实验二:栈和队列的应用

一、实验目的

熟练掌握栈结构及其应用

二、实验内容

利用栈结构具有先进后出的特性,编程实现:输入一个任意十进制数,转换八进制数进行输出。

1、定义栈结构,如:

#define stack_size 100

#define stackincrement 10

typedefstruct{

int *base;

int *top;

intstacksize;

}SqStack;

2.设计基本算法

1)对栈进行初始化:

Status InitStack (SqStack&S) {

//构造一个空栈

S.base = (Selemtype *)malloc(stack_size * sizeof(ElemType));

if (!S.base) exit (OVERFLOW);

S.top = S.base;

S.stacksize = stack_size;

return OK;

}//InitStack

2) 返回栈顶函数:

Status GetTop(SqStackS,Selemtype&e){

//若栈不空,则用e返回S的栈顶元素,并返回OK;否则返回ERROR if (S.top ==S.base) return ERROR;

e = *(S.top-1);

return OK;

}// GetTop

3)入栈函数

Status Push (SqStack&S,Selemtype e) {

//插入元素e为新的栈顶元素

if (S.top - S.base>=S.stacksize){//栈满,追加存储空间

S.base = (ElemType*)realloc (S.base,

(S.stacksize + stackincrement) * sizeof (ElemType));

if (!S.base) exit (OVERFLOW);//存储分配失败

S.top = S.base+S.stacksize;

S.stacksize +=stackincrement;

}

*S.top++=e;

return OK;

}//Push

4)栈空处理函数

Status StackEmpty(SqStack&S){

if (S.base == S.top) return OK;

else return ERROR;

} // StackEmpty

5)出栈函数

Status Pop(SqStack&S,Selemtype&e){

//若栈不空,则删除S的栈顶元素,用e返回其值,并返回OK

//,否则返回ERROR

if (S.top==S.base) return ERROR;

e=*--S.top;

return OK;

}//Pop

6)设计数制转换算法,编写转换函数conversion().

void conversion(structSqStack&S)

{

数制转换算法由同学们自己完成

}

实验三:二叉树的构造与遍历方法

一、实验目的

通过实验能熟练掌握二叉树的定义、性质和存储结构;二叉树的遍历和线索以及遍历算法的各种描述形式。

二、实验内容

用先序次序的方法构造一棵二叉树,并以三种遍历方式遍历二叉树。

三、实验步骤

1、定义二叉树和用先序次序构造二叉树。

typedefstructBiTNode

{//注意采用的是二叉链表作为二叉树的存储结构

TElemType data;

structBiTNode *lchild,*rchild;

}BiTNode,*BiTree;

Status CreateBiTree_PreOrder(BiTree&T){ //先序次序构造二叉树

TElemTypech;

scanf("%c",&ch);

if(ch==' ') T=NULL;

else {

if(!(T=(BiTNode *)malloc(sizeof(BiTNode)))) exit(OVERFLOW);

T->data=ch;

CreateBiTree_PreOrder(T->lchild);

CreateBiTree_PreOrder(T->rchild);

}

return OK;

}

2、根据先序遍历、中序遍历和后序遍历的方法编序相应的函数,如:

Status PreOrderTraverse(BiTree T, Status(*Visit)(TElemType e)){ //先序遍历

if(T){

if((*Visit)(T->data))

if(PreOrderTraverse(T->lchild,Visit))

if(PreOrderTraverse(T->rchild,Visit))

return OK;

return ERROR;

}

return OK;

}

Status InOrderTraverse(BiTree T, Status (*Visit)(TElemType e)){ //中序遍历

if(T!=NULL){

if(InOrderTraverse(T->lchild,Visit))

if((*Visit)(T->data))

if(InOrderTraverse(T->rchild,Visit))

return OK;

return ERROR;

}

else return OK;

}

Status PostOrderTraverse(BiTree T, Status(*Visit)(TElemType e)){ //后序遍历

if(T!=NULL){

if(PostOrderTraverse(T->lchild,Visit))

if(PostOrderTraverse(T->rchild,Visit))

if((*Visit)(T->data))

return OK;

return ERROR;

}

else return OK;

}

3.编写各种遍历后的输出函数,如:

Status Disp(TElemType e){ //输出各结点的数据值

printf("%3c",e);

return OK;

}

4.编写主函数调用以上各子函数,并调试程序以实现实验要求的各种遍历。

实验三图的遍历实验

实验内容:从某个顶点出发,沿着某条搜索路径对图中所有顶点各作一次访问,试用程序完成图的遍历实验。

步骤:

1.任务分析

图有遍历是从图中某个顶点出发,沿某条搜索路径对图中的所有结点进行访问,而且仅访问一次。遍历的流程图如图3.1所示,根据搜索的不同规则,遍历图的方法分为两种:深度优先遍历(DFS)和广度优先遍历(BFS)。

2.程序构思

深度优先遍历其算法基本思想是:

(1)选择一个起始点v0出发,并访问之;

(2)依次从v0的未访问过的邻接点出发,深度优先遍历图,直到图中与v0有路径相通的顶点都被访问过为止;

(3)如此时图中尚有顶点未被访问过,则另选图中一个未访问过的顶点作起始点,重复上述步骤过程,直到所有顶点都被访问过为止。

用流程图表示,如图3.2所示。

广度优先遍历其基本思想是:

(1)选择一个起始点v0,并访问之;

(2)从v0出发,依次访问v0的未被访问过的邻接顶点v1,v2,….v k,然后依次从v1,v2,….v k出发,访问各自来被访问过的邻接顶点;

(3)重复步骤(2)直到所有顶点都被访问过为止。

用流程图表示,如图3.3所示。

图5.1 图的遍历流程

图3 .2深度优先遍历流程图

图3.3 广度优先遍历流程图

3)编程序

#include

#include

#define MAX 20

//图的邻接表存储表示

typestructArcNode

{

intadjvex; //弧的邻接顶点

char info; //邻接点信息

structArcNode *nextarc; //指向下一条弧的指针}ArcNode;

typedefstructVnode

{

char data; //结点信息

ArcNode * link;

}Vnode,AdjList[MAX+1];

typedefstruct

{

AdjList vertices;

intvexnum; //顶点数

intarcnum; //边数

}ALGraph;

voidGreateGraph(ALGraph&G)

{

inti,s,d;

ArcNode *P;

//输入结点信息

for(i=1;i<=G.vexnum;i++)

{

getchar();

printf(“第%d个结点信息(char型):”,i);

scanf(“%c”,&G.vertices[i].data);

G.vertices[i].link=NULL;

}

//输入边的信息

for(i=1;i<=G.arcnum;i++)

{

printf(“第%d条边---起点序号,终点序号:”,i);

scanf(“%d %d”,&s,&d);

p=(ArcNode *)malloc(sizeof(ArcNode));

p->adjvex=d;

p->info=G.vertices[d].data; //存储边的权值等信息,此处以顶点数据代替p->nextarc=G.vertices[s].link; //p插入顶点s的邻接表中

G.vertices[s].link=p;

}

}

//深度遍历图的DFS算法实现

void DFS(AdjListg,intv,int visited[])

{

ArcNode *w;

inti;

printf(“%d ”,v);

visited[v]=1;

w=g[v].link;

while(w!=NULL)

{

if(visited[i]==0

DFS(g,i,visited);

w=w->nextarc;

}

}

//广度优先遍历图的BFS算法实现

void BFS(AdjList g, int v, visited[])

{

intqu[MAX],f=0,r=0;

ArcNode *p;

printf(“%d ”,v);

visited[v]=1;

qu[0]=v;

while(f<=r)

{

v=qu[f++];

p=g[v].link;

while(p!=NULL)

{

v=p->adjvex;

if(visited[v]==0)

{

visited[v]=1;

printf(“%d ”,v);

qu[++r]=v;

}

p=p->nextarc;

}

}

}

/****----------------------------------------****/

//函数名:Traver(AdjListg,intn,int id)

//参数:(传入)AdjList G 图结构体

// (传入)int n,图结点数

// (传入)int id,遍历方法选择(1深度遍历 2 广度遍历)// 功能:图的遍历

/****-----------------------------------------****/

voidTraver(AdjListg,intn,int id)

{

inti;

staticint visited[MAX];

for(i=1;i<=n;i++)

for(i=1;i<=n;i++)

if(visited[i]==0)

{

if(id==1) DFS(g,i,visited);

if(id==2) BFS(g,i,visited);

}

}

void main()

{

}

4)测试数据

测试数据如图3.4所示。

图3.4 测试数据的图结构

请同学们调试程序并输入测试数据进行运行。

提示:算好图形的边数,然后起始点开始输入。

实验五排序实验

实验内容:对一组随机数字进行希尔算法的排序。

实验目的:通过对希尔排序的算法设计,了解过程及其特点,培养灵活应用已有排序方法的能力,或开拓思路编制新的排序算法。

实验步骤:

1.建立待排数据表,输出数据表内容。

voidInputData(int list[],int n)

{

printf(“input data:\n”);

for(inti=0;i

scanf(“%d”,&list*i+);

}

voidOutputData(int list[],int b)

{

printf(“\nthe current sorting is:”);

for(int k=0;k

printf(“%d”,list*k+);

}

2.设计希尔插入排序的算法。如:

voidShellInsert( int list[],int)

{

inti,pos,length,temp;

int change; //记录数值是否有交换

length=n/2;

while(length!=0) //数组仍然可以分割

{//对各分割的集合进行处理

for(i=length;i

{

change=0;

temp=list[i];

pos=i-length; //计算进行处理的位置

while(temp=0 &&i<=n)

{

list[pos+length]=list[pos]; //在集合内比较后交换

pos=pos-length; //计算下一个进行处理的位置

change=1; //记录数值进行了交换

}

list[pos+length]=temp; //与最后的交换

if(change!=0)OutputData(list,n); //将每趟排序结果输出

}

length=length/2; //减小增量

}

}

3.编写主程序调用子程序,调试运行。void main()

{

……

}

实验一数据库及基本表的建立

实验一数据库及基本表的建立 一、实验目的 1、掌握SQL SERVER的查询分析器和企业管理器的使用; 2、掌握创建数据库和表的操作; 二、实验内容和要求 1、练习使用SQL语句、企业管理器(Enterprise Manager)创建数据库; 2、练习使用SQL语句、企业管理器(Enterprise Manager)创建数据库表; 三、实验主要仪器设备和材料 1.计算机及操作系统:PC机,Windows 2000/xp; 2.数据库管理系统:SQL sever 2005; 四、实验方法、步骤及结果测试 题目1、创建数据库“学生情况”: 实现代码及截图: SQL语句 Create database 学生情况 查询分析器执行情况 :SQL语句及执行结果截图显示 找到主数据文件和日志文件,观察大小,并给出截图。

题目2、将数据库“学生情况”改名为“student” SQL语句 EXEC sp_renamedb学生情况, student 查询分析器执行情况: SQL语句及执行结果截图显示 题目3、创建基本表 S表 含义字段名字段类型字段 宽度 说明学号Sno Char10主键,不允许为空姓名Sname char10不允许为空 性别Ssex char2取值为男或女

C表 Sc表: 创建各表的实现代码及截图:

查询分析器执行情况: SQL语句及执行结果截图显示

题目4*、用sql语句将C表中的ccredit改为整型,同样约束为0-20之间 题目5、用sql语句在S表中添加一格“备注”字段remark,变长字符型,长度30,并保存结果

广东工业大学实验室安全考试修订版

广东工业大学实验室安 全考试 Document number:PBGCG-0857-BTDO-0089-PTT1998

广东工业大学2015年实验室 1、[判断题]实验大楼出现火情时千万不要乘电梯,因为电梯可能因停电或失控,同时又因“烟囱效应”,电梯井常常成为浓烟的流通道。(分值)你的答案:正确 2、[判断题]高速设备和精密设备应在管理人员指导下使用。(分值)你的答案:正确 3、[判断题]箱式电阻炉的加热元件及其电源连接点需保持良好的绝缘性能,管理员应进行定期检查。(分值)你的答案:正确 4、[判断题]操作机床时,留长发者要戴安全防护帽。(分值)你的答案:正确 5、[判断题]焊接场地应预留安全通道并保持畅通。(分值)你的答案:正确 6、[判断题]焊接场地在10米内,禁止堆放易燃和易爆物质。(分值)你的答案:正确 7、[判断题]安装工件时,工件要装正、夹紧,装、卸工件后必须及时取下卡盘扳手。(分值)你的答案:正确 8、[判断题]在冲压过程中,如果工件卡在模子里,应先关闭电源,并用专业工具取出。(分值)你的答案:正确 9、[判断题]数控电火花线切割机床在加工时,可以用手触摸钼丝。(分值)你的答案:错误 10、[判断题]手工锻造时,握钳者应将钳把置于体侧,不得正对腹部,或将手放入钳股之间。(分值)你的答案:正确 11、[判断题]电源的电压、容量必须符合仪器设备的用电要求。(分值)你的答案:正确 12、[判断题]仪器设备开机前要先阅读熟悉该机器设备的操作规程。(分值)你的答案:正确 13、[判断题]有“严禁烟火”警示牌的大楼和实验室,可不必配置必要的消防、冲淋、洗眼、报警和逃生设施和有明显标志。(分值)你的答案:错误 14、[判断题]Ⅳ类放射源为低危险源。基本不会对人造成永久性损伤,但对长时间、近距离接触这些放射源的人可能造成可恢复的临时性损伤。(分值)你的答案:正确 15、[判断题]Ⅲ类放射源为危险源。在没有防护情况下,接触这类源几小时就可对人造成永久性损伤,接触几天至几周也可致人死亡。(分值)你的答案:正确

广工传感器实验报告

传感器技术及应用实验

实验一金属箔应变片及转换电路性能 实验项目名称:金属箔应变片及转换电路性能 实验项目性质:普通实验 所属课程名称:传感器原理与设计 实验计划学时:2学时 一、实验目的 1、了解应变片的测试原理和应用领域; 2、掌握应变片测试方法及典型转换电路原理; 3、通过实验数据分析处理,掌握获得传感器静态性能特性指标的过程和方法。 二、实验内容和要求 1、观察金属箔式应变片的结构,贴片方式以及桥接方式; 2、测量应变梁形变的应变输出; 3、比较应变片不同桥接方式对电桥输出结果的影响; 4、进行实验前,先预习附录一“CYS型传感器系统综合实验仪使用指南”,了解该设备 的基本结构与组成。 三、实验主要仪器设备和材料 1、CYS型传感器系统综合实验仪 本次实验所用模块包括:①悬臂梁及金属箔式应变片;②电桥模块;③差动放大器; ④直流稳压电源(±4V档);⑤测微头;⑥毫伏表。 2、导线若干 3、万用表 四、实验方法、步骤及结果测试 一)、实验原理 应变片是最常用的测力传感元件,当使用应变片进行测试时,首先要将应变片牢固地粘贴到测试体表面。当被测件受力发生形变,应变片敏感栅也同时变形,其阻值也随之发生相应变化。之后,再通过测量转换电路,将电阻值变化转换成电压输出信号显示。 直流电桥是最常用的一种电测转换电路。当电桥的相对臂电阻阻止乘积相等时,电桥平衡,此时电桥输出电压为零。若设电桥桥臂四个电阻的初始值分别为:R1=R2=R3=R4=R,当测试体表面发生形变,则其电阻的相对变化率分别为△R1/R1、△ R2/R2、△R3/R3、△R4/R4。当使用一个应变片时,可组成半桥单臂电桥,则有U0=U 4△R R ; 当使用两个应变片差动联接,组成半桥双臂电桥,则有U0=U 2△R R ;而四个应变片组成 全桥形式,则输出电压为U0=U△R R 。由此可见,单臂电桥,双臂电桥,全臂电桥的灵敏度是依次增大的。 通过本次实验,可以验证说明箔式应变片组成半桥单臂,半桥双臂电桥和全桥的原理及工作性能。

数据结构实验报告

数据结构实验报告 一.题目要求 1)编程实现二叉排序树,包括生成、插入,删除; 2)对二叉排序树进行先根、中根、和后根非递归遍历; 3)每次对树的修改操作和遍历操作的显示结果都需要在屏幕上用树的形状表示出来。 4)分别用二叉排序树和数组去存储一个班(50人以上)的成员信息(至少包括学号、姓名、成绩3项),对比查找效率,并说明在什么情况下二叉排序树效率高,为什么? 二.解决方案 对于前三个题目要求,我们用一个程序实现代码如下 #include #include #include #include "Stack.h"//栈的头文件,没有用上 typedefintElemType; //数据类型 typedefint Status; //返回值类型 //定义二叉树结构 typedefstructBiTNode{ ElemType data; //数据域 structBiTNode *lChild, *rChild;//左右子树域 }BiTNode, *BiTree; intInsertBST(BiTree&T,int key){//插入二叉树函数 if(T==NULL) { T = (BiTree)malloc(sizeof(BiTNode)); T->data=key; T->lChild=T->rChild=NULL; return 1; } else if(keydata){ InsertBST(T->lChild,key); } else if(key>T->data){ InsertBST(T->rChild,key); } else return 0; } BiTreeCreateBST(int a[],int n){//创建二叉树函数 BiTreebst=NULL; inti=0; while(i

KTV点歌系统广工数据库课程设计

课程设计 课程名称数据库系统 题目名称___ 卡拉OK点歌系统___ 学生学院计算机学院 专业班级 2010级计算机科学与技术四班学号 3110006015 学生姓名张法光 指导教师路璐 2013年1 月12 日成绩

评价标准分数比例 (%) 成绩 论文论文结构包含: 1、相关技术介绍、需求分析、 2、概念结构设计(涉及的实体至少三个以上)、 3、逻辑结构设计(有完整性约束说明)、 4、数据库物理设计、 5、数据库完整性设计(违反实体、参照完整性时的解决办法,比 如触发器、存储过程等) 5、数据库安全性设计、 6、数据库实施、系统测试方案和测试报告、 7、系统的主要功能和使用说明、系统安装说明。 要求论文完整、内容详细,格式规范。 40 程序1、系统运行正确; 2、功能完善:有增、删、改、查功能,输入、输出功能; 3、有基本的统计、报表功能 4、有多表连接查询、自身连接查询、字符串匹配查询、模糊查询、 分组查询等。 5、工作量饱满; 6、系统实现技术的难度。 30 数据库设计E-R图设计正确,至少3个实体; 数据库逻辑结构设计规范化; 数据库物理设计合理。 30 总评成绩优良中及格不及格总分

目录 1 引言 (7) 1.1课题来源 (7) 1.2课题研究主要内容 (7) 1.3主要工作 (8) 2 需求分析 (8) 2.1信息要求分析 (8) 2.2处理要求分析 (8) 2.3数据字典及安全性、完整性要求分析 (9) 3 概念结构设计 (10) 3.1数据实体描述及分ER图 (10) 3.2整体ER图 (13) 4 系统概要设计 (14) 4.1数据库逻辑结构设计 (14) 4.2数据库物理设计 (16) 4.3系统总体框架 (17) 5 系统详细设计 (17) 5.1数据库实施 (17) 5.2数据库的数据完整性设计 (29) 5.3数据的安全设计 (31) 5.4系统功能模块的设计与实现 (31) 5.5系统功能测试 (32) 5.6数据库性能检测与备份设计 (49) 5.7系统安装使用说明 (49) 6 回顾与展望 (50) 7 参考文献 (50)

广东工业大学实验室用房分配标准及管理办法

广东工业大学实验室用房分配标准与管理办法 广工大设字[2004]6号 第一条 为了加强对实验室的管理,规范实验室用房的配置和使用,更充分、合理、高效、公平的利用学校教学资源和办学条件为教学、科研服务,特制定本办法。 第二条 广东工业大学实验室用房指在广东工业大学大学城校园、东风路校区和龙洞校区所有建筑目的为实验室的建筑。实验室面积以室内有效使用面积计算。 第三条 实验室与设备管理处是实验室用房的直接管理部门。凡是实验室用房的分配、调整、使用、日常维护和室内装修改造等,由实验室与设备管理处负责。 第四条 学校关于实验室用房的分配标准、使用方法等方面的规章制度,经校长办公会议讨论通过后,由实验室与设备管理处组织实施。 第五条 实验室用房分为实验教学用房、科研用房和实验行政办公用房。实验教学用房包括公共基础课实验室、专业基础实验室和专业实验室;科研用房包括科研办公室、研究生用房和科研实验室。 第六条 实验室用房的分配标准主要依据各学院及有关单位所承担的本科生实验教学基本任务、研究生的基本规模和科研队伍的基本结构以及所承担的科研基本任务,并综合考虑各学院教学、科研及学科建设发展的需要。 第七条 教学实验室用房面积分配标准 (一)公共基础课实验室面积标准A j1 公共基础课实验室主要指大学物理实验室、电工电子实验室、计算机基础实验室、机械设计原理实验室、基础化学实验室(含有机、无机、分析和物化实验室)和力学实验室。 100/1A 11??=SK j N K (平方米) 其中K 1是考虑不同专业性质的调整系数,K 1取值如表1所示;N SK 是按学校教学计划该实验室承担的教学实验年人时数(如承担实训,按实际使用实验室时数); 表1 考虑不同专业性质的调整系数K 1 j2100/4A 22??=SK j N K (平方米) 表2 考虑不同专业性质的调整系数K 2 j3单独计算。 第八条 科研用房分配标准 (一)科研办公室面积标准A k1 以各学院教学、科研队伍的基本结构为基数,并考虑职称及学历结构因素。基本单元面积为5平方米。

数据库实验报告完整

华北电力大学 实验报告 | | 实验名称数据库实验 课程名称数据库 | | 专业班级:学生姓名: 学号:成绩: 指导教师:实验日期:2015/7/9

《数据库原理课程设计》课程设计 任务书 一、目的与要求 1.本实验是为计算机各专业的学生在学习数据库原理后,为培养更好的解决问题和实际动手能力 而设置的实践环节。通过这个环节,使学生具备应用数据库原理对数据库系统进行设计的能力。 为后继课程和毕业设计打下良好基础。 2.通过该实验,培养学生在建立数据库系统过程中使用关系数据理论的能力。 3.通过对一个数据库系统的设计,培养学生对数据库需求分析、数据库方案设计、系统编码、界 面设计和软件调试等各方面的能力。是一门考查学生数据库原理、面向对象设计方法、软件工程和信息系统分析与设计等课程的综合实验。 二、主要内容 针对一个具有实际应用场景的中小型系统(见题目附录)进行数据库设计,重点分析系统涉及的实体、实体之间的联系,实现增加、删除、更新、查询数据记录等基本操作。大致分为如下步骤: 1. 理解系统的数据库需求,分析实体及实体间联系,画出E-R图: 1)分析确定实体的属性和码,完成对该实体的实体完整性、用户自定义完整性的定义。 2)设计实体之间的联系,包括联系类型和联系的属性。最后画出完整的E-R图。 2.根据设计好的E-R图及关系数据库理论知识设计数据库模式: 1)把E-R图转换为逻辑模式; 2)规范化设计。使用关系范式理论证明所设计的关系至少属于3NF并写出证明过程;如果不属于3NF则进行模式分解,直到该关系满足3NF为止,要求写出分解过程。 3)设计关系模式间的参照完整性,要求实现级联删除和级联更新。 4)用SQL语言完成数据库内模式的设计。 3.数据库权限的设计: 1)根据系统分析,完成授权操作; 2)了解学习收回权限的操作。 4.完成用户界面的设计,对重要数据进行加密。

广东工业大学数据库原理与应用试卷答案

广东工业大学试卷用纸,共 页,第 页

广东工业大学试卷用纸,共页,第页

广东工业大学试卷用纸,共页,第页

一、填空(每题1分,共10分) 1、层次模型,网状模型,关系模型 2、逻辑结构设计,物理结构设计 3、原子性,持续性 4、并发调度的可串行性 5、闭包 6、描述事物的符号记录 二、选择题(每题2分,共20分) 三、简答题(每题4分,共16分) 1、解释数据库,数据库系统,数据库管理系统三个概念。 数据库是指长期存储于计算机内的、有组织的、可共享的数据集合。(1分) DBMS是指位于用户与OS之间的一层数据管理软件,它位用户或应用程序提供访问DB的方法。(1分) DBS是实现有组织的、动态的存储大量关联数据、方便多用户访问的计算机硬件、软件和数据资源组成的系统,即采用数据库技术的计算机系统。(2分) 2、试述视图和基本表之间的联系和区别? (1)视图和基本表在概念上等同,他们都是关系。(1分) (2)基本表是本身独立存在的表。视图是从一个或几个基本表(或视图)中导出的表,它与基本表不同,是一个 虚表。数据库中只存放视图的定义,而不存放视图对应的数据,这些数据仍然放在原来的基本表中。(3分) 3、数据库的完整性概念与数据库的安全性概念有什么区别和联系? 数据的完整性和安全性是两个不同的概念,但是有一定的联系。 前者是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出所造成的无效操作和错误结果。(2分) 后者是保护数据库防止恶意的破坏和非法的存取。也就是说,安全性措施的防范对象是非法用户和非法操作,完整性措施的防范对象是不合语义的数据。(2分) 4、什么是封锁?基本的封锁类型有几种,简要说明它们的含义。 封锁就是事务T在对某个数据对象(例如表、记录等)操作之前,先向系统发出请求,对其加锁。加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其它的事务不能更新此数据对象。(2分)基本封锁类型:排它锁和共享锁。 排它锁又称为写锁:若事务T对数据对象A加上X锁,则只允许T读取和修改A,其它任何事务都不能再对A加任何类型的锁,直到T释放A上的锁(1分) 共享锁又称为读锁:若事务T对数据对象A加上S锁,则其它事务只能再对A加S锁,而不能加X锁,直到T 释放A 上的S锁。(1分) 四、计算(4分) 1、(R÷S)×S={(2,3,4,5),(2,7,2,3)} 2 广东工业大学试卷用纸,共页,第页

广东工业大学实验室安全考试

广东工业大学2015年实验室 1、[判断题]实验大楼出现火情时千万不要乘电梯,因为电梯可能因停电或失控,同时又因“烟囱效应”,电梯井常常成为浓烟的流通道。(分值1.0) 你的答案:正确 2、[判断题]高速设备和精密设备应在管理人员指导下使用。(分值1.0) 你的答案:正确 3、[判断题]箱式电阻炉的加热元件及其电源连接点需保持良好的绝缘性能,管理员应进行定期检 查。(分值1.0) 你的答案:正确 4、[判断题]操作机床时,留长发者要戴安全防护帽。(分值1.0) 你的答案:正确 5、[判断题]焊接场地应预留安全通道并保持畅通。(分值1.0) 你的答案:正确 6、[判断题]焊接场地在10米内,禁止堆放易燃和易爆物质。(分值1.0) 你的答案:正确 7、[判断题]安装工件时,工件要装正、夹紧,装、卸工件后必须及时取下卡盘扳手。(分值1.0) 你的答案:正确 8、[判断题]在冲压过程中,如果工件卡在模子里,应先关闭电源,并用专业工具取出。(分值1.0)你的答案:正确 9、[判断题]数控电火花线切割机床在加工时,可以用手触摸钼丝。(分值1.0) 你的答案:错误

10、[判断题]手工锻造时,握钳者应将钳把置于体侧,不得正对腹部,或将手放入钳股之间。(分值1.0) 你的答案:正确 11、[判断题]电源的电压、容量必须符合仪器设备的用电要求。(分值1.0) 你的答案:正确 12、[判断题]仪器设备开机前要先阅读熟悉该机器设备的操作规程。(分值1.0) 你的答案:正确 13、[判断题]有“严禁烟火”警示牌的大楼和实验室,可不必配置必要的消防、冲淋、洗眼、报警和逃生设施和有明显标志。(分值1.0) 你的答案:错误 14、[判断题]Ⅳ类放射源为低危险源。基本不会对人造成永久性损伤,但对长时间、近距离接触这些放射源的人可能造成可恢复的临时性损伤。(分值1.0) 你的答案:正确 15、[判断题]Ⅲ类放射源为危险源。在没有防护情况下,接触这类源几小时就可对人造成永久性损伤,接触几天至几周也可致人死亡。(分值1.0) 你的答案:正确 16、[判断题]α衰变放出带二个正电的氦核,对它的防护是防止它进入体内,即内照射防护。(分值1.0) 你的答案:正确 17、[判断题]各涉源单位要建立健全放射性同位素保管、领用和消耗的登记制度,做到帐物相符。实验过程必须小心谨慎,严格按照操作规程进行,做好安全防护工作。(分值1.0) 你的答案:正确 18、[判断题]人体触电,双手触电致死比单手触电致死的概率要大得多。(分值1.0) 你的答案:正确

电拖实验报告伍宏淳

广东工业大学实验报告 __ 自动化_ _学院 __ 自动化 __专业 _ 1 __班成绩评定___________ 学号 3114000825 姓名_伍宏淳_(合作者____学号____) 教师签名_______ 实验_ 一 _ 题目_ 直流调速系统的稳态调速性能实验 _ 第_11 周星期三_ 一、实验目的 1. 掌握PWM直流调速系统的组成结构和工作原理; 2. 掌握直流调速系统的机械特性测试方法; 3. 理解开环、闭环调速方法的稳态机械特性; 4. 理解转速负反馈的作用。 二、实验内容和要求 1. 完成PWM直流调速系统的接线; 2. 测定开环调速方式的机械特性; 3. 测定转速负反馈有静差、无静差调速方式的静特性; 4. 分析对比开环、有静差、无静差调速的稳态机械特性。 三、实验结果和数据处理 1. 实验结果 2. 调速方式的稳态机械特性分析对比 ①根据表1和表2的数据,绘制开环调速、单闭环无静差调速的稳态机械特性图,分析对比这两种调速 方式的稳态机械特性。 1、闭环系统静特性可以比开环系统机械特性硬得多; 2、闭环系统的静差率要比开环系统小得多; 3、如果所求的静差率一定,则闭环系统可以大大提高调速范围。 ②根据表3和表4的数据,绘制双闭环有静差调速、双闭环无静差调速的稳态机械特性图,分析对比这 两种调速方式的稳态机械特性。

1、双闭环有静差调速的输出只取决于输入偏差量的现状; 2、双闭环无静差调速的输出包含了输入偏差量的全部历史,虽然到稳态时?Un=0,只要历史上有过?Un, 其积分就有一定数值,足以产生稳态运行所需要的控制电压Uc。这就是积分控制规律和比例控制规 律的根本区别。 四、结论与心得 本次实验是直流电机调速的各种方法的测试和对比,在课本的学习中我们掌握了理论知识,知道直流 调速方法有很多,只有清楚知道各自的优缺点,才能根据工程的要求,采用合理的方法,以用合理的方式 完成直流电机的调速。 五、问题与讨论 1. 根据直流开环调速、单闭环无静差调速的稳态机械特性图,思考转速负反馈的作用。 闭环后,当负载增大时,由于转速反馈调节的作用,电压可升高到Ud02,使工作点水平向上平移,稳态速 降比开环系统要小得多。 2. 根据直流双闭环有静差调速、无静差调速的稳态机械特性图,思考积分调节器的作用。 采用积分调节器,使得在有静差调速的情况下差值只能在是瞬时时刻,因为有积分调节器的加入,使得可 以全部历史时刻控制,以致没有差值的产生。 广东工业大学实验报告 __ 自动化_ _学院 __ 自动化 __专业 _ 1 __班成绩评定___________ 学号 3114000825 姓名_伍宏淳_(合作者____学号____) 教师签名_______ 实验_ 二 _ 题目_ 直流调速系统的动态调速性能实验 _ 第_12 周星期三_ 一、实验目的 1. 掌握直流调速系统的动态响应特性测试方法; 2. 理解转速单闭环、转速电流双闭环调速方法的动态响应特性,以及电流闭环控制的作用; 3. 理解可逆直流调速系统转速反向的过渡过程; 4. 理解转速调节器的比例、积分参数对系统动态性能的影响。 二、实验内容和要求 1. 完成PWM直流调速系统的接线; 2. 记录转速单闭环调速方式的动态响应曲线; 3. 记录转速电流双闭环调速方式的动态响应曲线; 4. 分析对比单闭环、双闭环调速方式在转速跟随、抗负载扰动、抗电网电压扰动方面的性能; 5. 记录可逆直流调速系统转速反向的过渡过程的I-N曲线; 6. 测定转速调节器在不同的比例、积分参数下,调速系统的动态响应特性。 三、实验结果和数据处理 1.空载零速启动实验 图1.1转速单闭环转速和电流波形图1.2双闭环转速电流波形 2.负载扰动实验 图2.1单闭环负载突加图2.2 单闭环负载突减 图2.3双闭环负载突加图2.4双闭环负载突减

数据结构实验一 实验报告

班级::学号: 实验一线性表的基本操作 一、实验目的 1、掌握线性表的定义; 2、掌握线性表的基本操作,如建立、查找、插入和删除等。 二、实验容 定义一个包含学生信息(学号,,成绩)的顺序表和链表(二选一),使其具有如下功能: (1) 根据指定学生个数,逐个输入学生信息; (2) 逐个显示学生表中所有学生的相关信息; (3) 根据进行查找,返回此学生的学号和成绩; (4) 根据指定的位置可返回相应的学生信息(学号,,成绩); (5) 给定一个学生信息,插入到表中指定的位置; (6) 删除指定位置的学生记录; (7) 统计表中学生个数。 三、实验环境 Visual C++ 四、程序分析与实验结果 #include #include #include #include #define OK 1 #define ERROR 0 #define OVERFLOW -2

typedef int Status; // 定义函数返回值类型 typedef struct { char num[10]; // 学号 char name[20]; // double grade; // 成绩 }student; typedef student ElemType; typedef struct LNode { ElemType data; // 数据域 struct LNode *next; //指针域 }LNode,*LinkList; Status InitList(LinkList &L) // 构造空链表L { L=(struct LNode*)malloc(sizeof(struct LNode)); L->next=NULL; return OK;

广工测试技术实验报告模板

实验题目: 《机械转子底座的振动测量和分析》 实验报告 姓名+学号:冯云凌(2111601211)、 实验时间:2016年10月24日 实验班级:专硕二班 实验教师:邹大鹏副教授 成绩评定:_____ __ 教师签名:_____ __ 机电学院工程测试技术实验室 广东工业大学 广东工业大学实验报告

一、预习报告:(进入实验室之前完成) 1.实验目的与要求: 实验目的: 1.掌握磁电式速度传感器的工作原理、特点和应用。 2.掌握振动的测量和数据分析。 实验要求: 先利用光电式转速传感器测量出电机的转速;然后利用磁电式速度传感器测量机械转子底座在该电机转速下的振动速度;对测量出的振动速度信号进行频谱分析;找出振动信号的主频与电机转速之间的关系。 2.初定设计方案: 先利用光电式转速传感器测量出电机的转速;然后利用磁电式速度传感器测量机械转子底座在该电机转速下的振动速度;利用获得的数据,使用MATLAB对测量出的振动速度信号进行频谱分析;找出振动信号的主频与电机转速之间的关系。 3.实验室提供的仪器设备、元器件和材料 本次实验的主要仪器设备有:机械转子系统,光电式转速传感器,磁电式速度传感器,USB 数据采集卡,计算机等。 磁电式速度传感器简介:

OD9200 系列振动速度传感器,可用于对轴承座、机壳或结构相对于自由空间的绝对振动测量。其输出电压与振动速度成正比,故又称速度式振动传感器。其输出可以是速度值的大小,也可以是把速度量经过积分转换成位移量信号输出。这种测量可对旋转或往复式机构的综合工况进行评价。 OD9200 系列速度振动传感器属于惯性式传感器。是利用磁电感应原理把振动信号变换成电信号。它主要由磁路系统、惯性质量、弹簧阻尼等部分组成。在传感器壳体中刚性地固定有磁铁,惯性质量(线圈组件)用弹簧元件悬挂于壳体上。工作时,将传感器安装在机器上,在机器振动时,在传感器工作频率范围内,线圈与磁铁相对运动、切割磁力线,在线圈内产生感应电压,该电压值正比于振动速度值。与二次仪表相配接(如OD9000 振动系列仪表),即可显示振动速度或振动位移量的大小。也可以输送到其它二次仪表或交流电压表进行测量。

2013广工数据库实验报告

数据库原理实验报告 学院计算机学院 专业计算机科学与技术班级2011 级7 班 学号3111XXXX 姓名XXX 指导教师明俊峰 (2013 年11 月)

计算机学院计算机专业2011(7)班学号:3111 姓名:协作者:________ 教师评定: 实验__一__题目__ 数据库及基本表的建立 _ 实验__二__题目__ 设计数据完整性 __ 实验__三__题目__ 查询数据库 __ 实验平台:SQL Server 2005

计算机学院计算机专业2011(7)班学号:3111 姓名:协作者:________ 教师评定: 实验题目一、数据库及基本表的建立 一、实验目的 1、掌握SQL SERVER的查询分析器和企业管理器的使用; 2、掌握创建数据库和表的操作; 二、实验内容和要求 1、分别使用SQL语句、企业管理器(Enterprise Manager)创建数据库; 2、使用SQL语句、企业管理器(Enterprise Manager)创建数据库表; 三、实验主要仪器设备和材料 1.计算机及操作系统:PC机,Windows 2000/xp; 2.数据库管理系统:SQL sever 2000/2003/2005; 四、实验方法、步骤及结果测试 创建一个教学管理数据库SC,其描述的信息有:学生信息、课程信息、教师信息、学生选课成绩、授课信息、班级信息、系部信息、专业信息。 创建:student表(学生信息表)、course表(课程信息表)、teacher表(教师信息表)、student _course表(学生选课成绩表)、teacher_course表(教师上课课表)等。 1、创建数据库: 确定数据库名称;数据库用于学生管理,命名为SC 确定数据库的位置;要求:数据文件和日志文件分别存储在E盘自己的目录下。 确定数据库的大小;根据实际的数据量确定数据文件的初始大小为30MB,日志文件的初始大小为3MB。 确定数据库的增长;根据实际情况,确定数据文件按20%增长,日志文件按1MB增长。(1)、利用查询分析器(Query Analyzer),使用SQL语句指定参数创建数据库; 1

广东工业大学现代控制理论实验报告

实验一系统的传递函数阵和状态空间表达式的转换 一.实验目的 学习多变量系统传递空间表达式的建立方法、了解系统状态空间表达式和传递函数相互转换的方法; 通过编程、伤及调试,掌握多变量系统状态空间表达式与传递函数相互转换方法。二.实验容 例1.1: A=[0 1 0;0 0 1;-4 -3 -2]; B=[1;3;-6]; C=[1 0 0]; D=0; %状态空间表达式转换成传递函数阵的格式为 %[num,den]=ss2tf(a,b,c,d,u) [num,den]=ss2tf(A,B,C,D,1) 例1.2 num=[0 1 5 3]; den=[1 2 3 4]; [A,B,C,D]=tf2ss(num,den)

练习题 求A、B、C、D阵的程序和运行结果 程序如下: %传递函数阵的格式转换成为状态空间表达式num=[0 0 1 2;0 1 5 3]; den=[1 2 3 4]; [A,B,C,D]=tf2ss(num,den)

验证: 程序如下: A=[-2 -3 -4;1 0 0;0 1 0]; B=[1;0;0]; C=[0 1 2;1 5 3]; D=[0;0]; %状态空间表达式转换成传递函数阵的格式为%[num,den]=ss2tf(a,b,c,d,u) [num,den]=ss2tf(A,B,C,D,1)

实验二状态空间控制模型系统仿真及状态方程求解 一.实验目的 1.熟悉线性连续系统的状态空间控制模型的各种表示方法; 2.熟悉系统模型的转换功能; 3.利用MATLAB对线性定常系统进行动态分析。 例2.1 num=[1 2 1 3]; den=[1 0.5 2 1]; [z,p,k]=tf2zp(num,den) [a,b,c,d]=tf2ss(num,den)

数据库实验报告大全 广工 蔡延光版

自动化学院自动化专业班学号 姓名实验时间2011.3.14 教师评定 实验题目数据定义 实验报告一 一、实验目的与要求 目的:使用SQL语言实现数据库的创建、删除;基本表的创建、删除、更新工作;以及索引的创建、删除工作。 要求:1、在SQL SERVER 2000查询分析器中,利用SQL语言中CREATE、DROP 命令实现数据库的创建及删除工作。 2、在SQL SERVER 2000查询分析器中,利用SQL语言中CREATE、ALTER及DROP命令进行基本表的创建、更新、删除工作,并实现基本表中各类完整性约束条件的限定。 3、在SQL SERVER 2000查询分析器中,利用SQL语言中CREATE、ALTER及DROP命令进行基本表中索引的创建、更新、删除工作。 4、完成上述工作后,在SQL SERVER 2000企业管理器中,查看是否成功创建实验所要求数据库、基本表、各类完整性约束条件及索引等内容。 二、实验方案 所有实验内容必须在SQL Server 2000的查询分析器中完成,设置查询分析器的结果区为Standard Execute(标准执行)或Executed Grid(网格执行)方式.发布执行命令.并在结果区中查看查询结果,如果结果不正确则需要进行修改,直到正确为止。要求完成如下内容: 1.定义数据库 定义一个借阅数据库,要求所定义的数据库大小为1M,且数据库名称为Labery_学号。 2.定义下列数据库基本表 在所定义的借阅数据库Labery_学号中,按要求定义如下数据库表: 1)书(book)

列名别名类型及长度是否可为空书号bno char(8)否 类别category varchar(10)否 书名title varchar(40)否 出版社press varchar(30)是 年份book_year Int否 作者author char(20)是 价格price decimal(7,2)否 总藏书量book_total Int否 2)借书证(card) 列名别名类型及长度是否可为空卡号cno char(7)否 姓名name char(8)否 单位department varchar(40)是 类别type char(1)否 3)借书记录(borrow) 列名别名类型及长度是否可为空卡号cno char(7)否 书号bno char(8)否 借书日期borrow_date smalldatetime否 还书日期return_date smalldatetime是 3.完整性约束条件: 主要内容为: 1)确定各基本表的主码; 2)确定各基本表的外码; 3)要求在定义各基本表的同时,确定如下完整性约束条件 1、定义各基本表主码,并且要求主属性不能为空; 2、如果有外码,定义各基本表外码; 3、要求检查借书证中属性Type的值是否为('T','G','U','F')); 4、借书记录borrow基本表中borrow_date默认日期为当前时间。4)确定各基本表哪些字段需要建立索引。

广东工业大学编译原理实验报告

一、课内试验要求 对PL/0作以下修改扩充: (1)增加单词:保留字ELSE,REPEAT,DOWHILE,RETURN 运算符+=,-=,++,-- (2)修改单词:不等号# 改为<> (3)增加条件语句的ELSE子句 二、具体操作 (一)增加保留字ELSE,REPEAT,DOWHILE,RETURN和运算符+=,-=,++,--的修改需要在头文件和主程序的init()初始化函数修改,相应的要增加关键字个数。 具体如下: 《一》头文件PL0.h中修改的程序部分 //************************************* # define norw 17 //关键字增加了4个,13改为17 增加了保留字ELSE,REPEAT,DOWHILE,RETURN //************************************* /*符号*/ enum symbol{ nul, ident, number, plus, minus, times, slash, oddsym, eql, neq, lss, leq, gtr, geq, lparen, rparen, comma, semicolon,period, becomes, beginsym, endsym, ifsym, thensym, whilesym, writesym, readsym, dosym, callsym, constsym, varsym, procsym, //**************************************************************** //增加保留字else,repeat,dowhite,return,运算符+=,-=,++,-- elsesym,repeatsym,dowhitesym,returnsym, addbecomes,//运算符+= minusbecomes,//运算符-= adddouble,//运算符++ minusdouble,//运算符-- //**************************************************************** }; //**************************************************************** #define symnum 40 //关键字由原来的32个变为40个,则32改为40 //**************************************************************** 《二》主程序文件PL0.cpp中修改的程序部分 初始化函数void init();中修改部分: /*设置保留字名字,按照字母顺序,便于折半查找*/ strcpy(&(word[0][0]),"begin"); strcpy(&(word[1][0]),"call"); strcpy(&(word[2][0]),"const"); strcpy(&(word[3][0]),"do"); //********************************** //添加增加的保留字,下标也要随着更改 strcpy(&(word[4][0]),"dowhite"); strcpy(&(word[5][0]),"else"); //********************************** strcpy(&(word[6][0]),"end"); strcpy(&(word[7][0]),"if"); strcpy(&(word[8][0]),"odd"); strcpy(&(word[9][0]),"procedure"); strcpy(&(word[10][0]),"read"); //********************************** strcpy(&(word[11][0]),"repeat"); strcpy(&(word[12][0]),"return"); //**********************************

大学物理实验报告 旋光物质溶液浓度测量

山东理工大学物理实验报告 实验名称旋光物质溶液浓度测量 姓名学号061219876 时间代码14256 实验序号19 院系 大一工作部专业理工级.班教师签名 实验目的 1 加深对偏振光的使用。 2 掌握旋光仪的结构原理学会用旋光仪测定旋光物质的浓度。 实验报告内容 原理预习、操作步骤、数据处理、误差分析、思考题解答 【实验原理】线偏振光通过旋光性物质后其振动面发生偏转。振动面旋转的角度φ与光所透过的晶体厚度成正比若为溶液则正比于液柱的长度和溶液的浓度。此外旋转角还与入射光波长及溶液的温度有关。如果当光的波长和溶液的温度一定时偏振光透过溶液后其振动面旋转的角度φ为Clt 式中C为溶液的浓度通常用100ml溶液中含溶质的克数为单位l是光所透过的溶液的厚度以dm为单位t则是溶液对波长λ的光在温度t时的旋光率在数值上等于通过单位厚度、单位浓度的溶液所产生的旋转角。 【操作步骤】 1 接通电源点亮钠光灯。 2 测定旋光仪的零点。调节物目镜组使之三分视场分界线清晰然后转动检偏器在暗视场条件下使三个区域亮度相同记录左右刻盘上的读数于数据表中重复3次求其平均值作为旋光仪的零点位置θ0。

3 放入装有已知浓度的葡萄糖溶液的试管重新调节物目镜组使三分视场分界线清晰然后转动检偏器使三分域亮度再次相同记录刻度盘读数θ1于数据表中重复测量3次取平均值。由θ1-θ0即得线偏振光振动面的旋转角φ1已知试管长度物理实验中心实验名称姓名时间代码预习分课堂分报告分总成绩l10cm求出溶液的旋光率t。 4 把未知浓度的葡萄糖溶液的试管置于镜筒盒内用同样的方法测定旋转角θ2将数据记录于数据表中重复3次取平均值。用已测旋光率计算未知溶液含糖的百分率。 【数据处理】 1已知短试管长度l11dm溶液浓度为0050根据测量数据求出溶液的旋光率t。 2已知长试管长度l22dm根据测量数据求出溶液的浓度。数据表次数θ0/o θ1/o θ2/o φ1/o φ2/o 左右左右左右θ1-θ0 θ2-θ0 1 145.60 145.65 170.60 170.70 150.45 150.50 25.025 4.85 2 140.60 140.65 165.30 165.45 157.90 157.95 24.75 17.30 3 154.30 154.45 182.40 182.50 163.20 163.30 28.075 8.875 平均值25.95 10.34 1旋光率 dmdmlc/9.5115.095.25111 2长试管中溶液的浓度 0022296.929.5134.10dmlc 【思考题】1旋光角的大小与那些因素有关答对于晶体的旋光物质振动面旋转的角度φ与光所透过的晶体厚度成正比若为溶液则正比于液柱的长度和溶液的浓度。此外旋转角还与入射光波长及溶液

数据结构实验一 实验报告

班级: 姓名: 学号: 实验一线性表的基本操作 一、实验目的 1、掌握线性表的定义; 2、掌握线性表的基本操作,如建立、查找、插入与删除等。 二、实验内容 定义一个包含学生信息(学号,姓名,成绩)的顺序表与链表(二选一),使其具有如下功能: (1) 根据指定学生个数,逐个输入学生信息; (2) 逐个显示学生表中所有学生的相关信息; (3) 根据姓名进行查找,返回此学生的学号与成绩; (4) 根据指定的位置可返回相应的学生信息(学号,姓名,成绩); (5) 给定一个学生信息,插入到表中指定的位置; (6) 删除指定位置的学生记录; (7) 统计表中学生个数。 三、实验环境 Visual C++ 四、程序分析与实验结果 #include #include #include #include #define OK 1 #define ERROR 0 #define OVERFLOW -2 typedef int Status; // 定义函数返回值类型 typedef struct

{ char num[10]; // 学号 char name[20]; // 姓名 double grade; // 成绩 }student; typedef student ElemType; typedef struct LNode { ElemType data; // 数据域 struct LNode *next; //指针域 }LNode,*LinkList; Status InitList(LinkList &L) // 构造空链表L { L=(struct LNode*)malloc(sizeof(struct LNode)); L->next=NULL; return OK; } Status GetElem(LinkList L,int i,ElemType &e) // 访问链表,找到i位置的数据域,返回给 e { LinkList p; p=L->next;

相关主题
相关文档 最新文档