数据库关键路径实验报告

数据库关键路径实验报告
数据库关键路径实验报告

成都信息工程学院计算机系

一【上机实验目的】

对有向图的拓扑排序和关键路径更加了解以及更好的应用它

二【实验环境】

PC机每人1台在Visual C++环境下测试

三【上机实验内容】

.给定一图,在其拓朴排序的基础上,求关键路径,要求以图形界面呈现关键路径。

四【上机调试程序流程图】(注:可打印)

五【上机调试中出现的错误信息、错误原因及解决办法】

犯的错误1.在写构建图这个子函数时,初始数据的时候有点问题,本来想用文件的,但是对于文件用的不是很熟悉,然后就利用了二维数组来存放数据。

2.就是在画图形界面的时候,让关键路径以另外的颜色出现时候出现了问题。解决方法是找到个最早时间和最迟时间相等就把顶点和终点赋值给相应的顶点,再进行颜色的改变。

六【上机调试后的源程序及还存在的问题】(注:源程序可打印)

#include

#include

using namespace std;

#define MAX_VEXTEX_NUM 20

#define M 20

#define MaxLen 1000 //最大长度

#define STACK_INIT_SIZE 100

#define STACKINCREMENT 10

#define OK 1

#define ERROR 0

#define OVERFLOW -1

typedef int SElemType;

typedef int VertexType;

typedef int VRType;

typedef int InfoType;

typedef struct ArcNode

{

int adjvex; // 该弧所指向的顶点的位置

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

InfoType info; // 该弧相关信息的指针

}ArcNode;

typedef struct VNode

{

VertexType data;// 顶点信息

ArcNode *firstarc;// 指向第一条依附该顶点的弧

}VNode,AdjList[MAX_VEXTEX_NUM];

typedef struct

{

AdjList vertices;

int vexnum, arcnum;

}ALGraph;

typedef struct SqStack

{

SElemType *base;

SElemType *top;

int stacksize;

}SqStack;

class point //画界面

{

public:

point(int x,int y):m_x(x),m_y(y){}

point(){}

int x(){return m_x;}

int y(){return m_y;}

point operator+(point p)

{

return point(m_x+p.x(),m_y+p.y());

}

point operator/(int i)

{

return point(m_x/i,m_y/i);

}

private:

int m_x;

int m_y;

};

int g_r=25;

int g_height=400;

int g_width=500;

point g_pos[9];

void paintmain(ALGraph &G);

void line(point a,point b)

{

line(a.x(),a.y(),b.x(),b.y());

}

void fillcircle(point p,int r)

{

fillellipse(p.x(),p.y(),r,r);

}

void outtext(point p,char* str)

{

outtextxy(p.x(),p.y(),str);

} //界面

void InitStack(SqStack &S)//初始化栈

{

S.base=(SElemType *)malloc(STACK_INIT_SIZE*sizeof(SElemType)); if(!S.base)

exit (OVERFLOW);

S.top=S.base;

S.stacksize=STACK_INIT_SIZE;

}

int Pop(SqStack &S,SElemType &e)//出栈操作

{

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

e=*--S.top;

return OK;

}

int Push(SqStack &S,SElemType e)//人栈操作

{

if(S.top-S.base>=S.stacksize)

{

S.base = (SElemType *)realloc(S.base,(S.stacksize+STACKINCREMENT)*sizeof(SElemType));

if(!S.base)

exit(OVERFLOW);

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

S.stacksize+=STACKINCREMENT;

}

*S.top++=e;

return OK;

}

int StackEmpty(SqStack S)//判栈是否为空

{

if(S.top==S.base)

return OK;

else

return ERROR;

}

int CreatALGraph(ALGraph &G)//构建图

{

ArcNode *p;

int i,j, k,info1;

int a[11][3]={{1,2,6},{1,3,4},{1,4,5},{2,5,1},{3,5,1},{4,6,2},

{5,7,9},{5,8,7},{6,8,4},{7,9,2},{8,9,4}};

G.vexnum=9;

G.arcnum=11;

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

{

G.vertices[i].data=i;

G.vertices[i].firstarc=NULL;

}

for(k=0;k

{

i=a[k][0];

j=a[k][1];

info1=a[k][2];

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

p->adjvex=j;

p->info=info1;

p->nextarc=G.vertices[i].firstarc;

G.vertices[i].firstarc=p;

}

return OK;

}

void FindInDegree(ALGraph G,int indegree[])//求入度操作

{

int i;

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

{

indegree[i]=0;

}

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

{

while(G.vertices[i].firstarc)

{

indegree[G.vertices[i].firstarc->adjvex]++;

G.vertices[i].firstarc=G.vertices[i].firstarc->nextarc;

}

}

}

int ve[100];

int TopologicalSort(ALGraph G,SqStack &T) //进行拓扑排序{

int indegree[M];

FindInDegree(G, indegree);//求各顶点的入度

SqStack S;

InitStack(S);

ArcNode *p;

InitStack(S);

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

{

if (!indegree[i])Push(S,i);//入度为0者入栈

}

InitStack(T);

int count=0;

for(x=1;x<=G.vexnum;x++)// ve[0..G.vexnum-1]=0; {

ve[x]=0;

}

while(!StackEmpty(S))

{

Pop(S,i);

Push(T,i);

++count;//输出i号顶点并计数

for (p=G.vertices[i].firstarc;p;p=p->nextarc)

{

k=p->adjvex;

if (--indegree[k]==0)//若入度减为0,则入栈

{

Push(S,k);

}

if((ve[i]+p->info)>ve[k])

{

ve[k]= ve[i]+p->info;

}

}

}

printf("\n");

if (count

{

printf("出现错误\n");

}

else

{

printf("排序成功\n");

}

}

int CriticalPath(ALGraph G)//输出G的关键活动

{

int dut;

int j=G.vexnum;

int i,k;

int ee,el;

int vl[100];

ArcNode *p;

SqStack T;

if(!TopologicalSort(G,T))

{

printf("该图存在环,无法找到关键路径!");

return ERROR;

}

for(i=1;i<=G.vexnum;i++)// vl[0.. G.vexnum-1] =ve[0..G.vexnum-1];//用ve初始化vl {

vl[i]=ve[G.vexnum];

}

while(!StackEmpty(T))

for(Pop(T,j),p=G.vertices[j].firstarc;p;p=p->nextarc)

{

k=p->adjvex;

dut=p->info;

if((vl[k]-dut)

{

vl[j]=vl[k]-dut;

}

}//end of for

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

{

for (p=G.vertices[i].firstarc;p;p=p->nextarc)

{

k=p->adjvex;

dut=p->info;

ee=ve[i];

el=vl[k]-dut;

if(ve[i]==(vl[k]-dut))

{

setcolor(BLUE);

line(g_pos[i],g_pos[k]);

}//end of for(p)

}

return 1;

}//end of CriticalPath

void paintmain(ALGraph &G)

{

setbkcolor(WHITE);

setcolor(BLACK);

setfont(-15,0,"微软雅黑");

ArcNode *p;

int i,j, k,info1;

int a[11][3]={{1,2,6},{1,3,4},{1,4,5},{2,5,1},{3,5,1},{4,6,2}, {5,7,9},{5,8,7},{6,8,4},{7,9,2},{8,9,4}};

G.vexnum=9;

G.arcnum=11;

for(k=0;k

{

i=a[k][0];

j=a[k][1];

info1=a[k][2];

char str[10]; //画线

point p1=g_pos[i];

point p2=g_pos[j];

int w=info1;

itoa(w,str,10);

line(p1,p2);

outtext((p1+p2)/2,str);

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

p->adjvex=j;

p->info=info1;

p->nextarc=G.vertices[i].firstarc;

G.vertices[i].firstarc=p;

}

setcolor(RED);

for ( i=1; i<=9; ++i) // paint circle

{

char str[10]="v";

itoa(i,str+1,10);

fillcircle(g_pos[i],g_r);

setbkmode(TRANSPARENT);

outtext(g_pos[i]+point(-8,-8),str);

}

}

int main()

{

ALGraph G;

CreatALGraph(G);

setinitmode(NULL);

initgraph(g_width,g_height);

// setcaption("AOE-网演示程序");

g_pos[1]=point(35,120);

g_pos[2]=point(140,70);

g_pos[3]=point(140,180);

g_pos[4]=point(140,260);

g_pos[5]=point(250,120);

g_pos[6]=point(260,260);

g_pos[7]=point(360,70);

g_pos[8]=point(360,180);

g_pos[9]=point(450,120);

paintmain(G);

setfont(-20,0,"微软雅黑");

outtextxy(160,10,"按任意键开始演示...");

getch();

CriticalPath(G);

getch();

return 0;

}

七【上机实验中的其他它问题及心得】

经过半学期学习数据结构然后做了这个关键路径的小项目,要写出这个小项目必需要平时努力的学好前面的知识,为后面打下基础才能写好这个程序。

我感觉自己在上数据结构这门课的时候是每节课都到了的,只是有一次起晚了迟到了几分钟,每次上课李老师都要抽人回答上节课上

的知识点,让我们回顾以前学的知识,这是一个很好的方法让我们记得数据结构主要学了什么,而且在上课期间也是慢慢的给我们分析程序,用画图的方式让我们很容易理解程序中每个语句是什么含义,通过你的引导让我们知道应该怎么分析程序,实参到形参的关系等等,这次写这个关键路径也是用了你的方法,先把书上的程序用画图的方式慢慢理解之后,然后有了自己的思路,才写出的这个关键路径的程序。

对于在写这个关键路径的过程中也遇到很多问题,但最要的有两个就是怎么存放数据和图形界面应该怎么画这两个问题。存放数据时本来用的是文件,但是学习文件时对于文件的操作不是很熟悉,然后无论怎样改都有错误,然后就选择了用二维数组来存放数据。而对于图形界面,以前都很少接触,要做这个界面还要先去学习图形库,该怎样画这个图,然后通过问同学他们说EGE图形库比较好用,就用了EGE图形库,写这个界面最主要的问题就是把关键路径以不同的颜色呈现出来,我的解决方法是找到一个最早时间和最迟时间相等的就把他们的顶点信息给线的顶点,然后实现的颜色改变,还有就是一些小问题,不过很快都解决了。

通过写关键路径这个程序也让我学到了很多知识,比如说我知道怎么画一个简单的图形界面了,还有就是对于求拓扑排序和关键路径的知识点更加了解,以后可以很好的运用到以后遇到的问题中,也更好的学会了怎么分析一个程序,逻辑能力比较重要。

实验报告

算法与数据结构 实验报告 系(院):计算机科学学院 专业班级:软工11102 姓名:潘香杰 学号: 201104449 班级序号: 18 指导教师:詹泽梅老师 实验时间:2013.6.17 - 2013.6.29 实验地点:4号楼5楼机房

目录 1、课程设计目的...................................... 2、设计任务.......................................... 3、设计方案.......................................... 4、实现过程.......................................... 5、测试.............................................. 6、使用说明.......................................... 7、难点与收获........................................ 8、实现代码.......................................... 9、可改进的地方.....................................

算法与数据结构课程设计是在学完数据结构课程之后的实践教学环节。本实践教学是培养学生数据抽象能力,进行复杂程序设计的训练过程。要求学生能对所涉及问题选择合适的数据结构、存储结构及算法,并编写出结构清楚且正确易读的程序,提高程序设计基本技能和技巧。 一.设计目的 1.提高数据抽象能力。根据实际问题,能利用数据结构理论课中所学到的知识选择合适的逻辑结构以及存储结构,并设计出有效解决问题的算法。 2.提高程序设计和调试能力。学生通过上机实习,验证自己设计的算法的正确性。学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改。 3.初步了解开发过程中问题分析、整体设计、程序编码、测试等基本方法和技能。二.设计任务 设计一个基于DOS菜单的应用程序。要利用多级菜单实现各种功能。内容如下: ①创建无向图的邻接表 ②无向图的深度优先遍历 ③无向创建无向图的邻接矩阵 ④无向图的基本操作及应用 ⑤图的广度优先遍历 1.有向图的基本操作及应用 ①创建有向图的邻接矩阵 ②创建有向图的邻接表 ③拓扑排序 2.无向网的基本操作及应用 ①创建无向网的邻接矩阵 ②创建无向网的邻接表 ③求最小生成树 3.有向网的基本操作及应用 ①创建有向网的邻接矩阵 ②创建有向网的邻接表 ③关键路径 ④单源最短路径 三.设计方案 第一步:根据设计任务,设计DOS菜单,菜单运行成果如图所示:

西北工业大学数据库实验报告

1.利用图形用户界面创建,备份,删除和还原数据库和数据表(50分,每小题5分) ●数据库和表的要求(第五版教材第二章习题 6 要求的数据库) 数据库名:SPJ,其中包含四张表:S表, P表, J表, SPJ表 ●完成以下具体操作: (1)创建SPJ数据库,初始大小为 10MB,最大为50MB,数据库自动增长,增长方 式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。 数据库的逻辑文件名和物理文件名均采用默认值。 (2)在SPJ数据库中创建如图2.1-图2.4的四张表(只输入一部分数据示意即可)。 S表: P表: J表: SPJ表:

(3)备份数据库SPJ(第一种方法):备份成一个扩展名为bak的文件。(提示: 最好先删除系统默认的备份文件名,然后添加自己指定的备份文件名) (4)备份数据库SPJ(第二种方法):将SPJ数据库定义时使用的文件(扩展名为 mdf,ldf的数据文件、日志文件等)复制到其他文件夹进行备份。 原位置: 新的位置: (5)删除已经创建的工程项目表(J表)。 (6)删除SPJ数据库。(可以在系统默认的数据存储文件夹下查看此时SPJ数据 库对应的mdf,ldf文件是否存在) 删除过后文件不存在 (7)利用备份过的bak备份文件还原刚才删除的SPJ数据库。(还原数据库)

(8)利用备份过的mdf,ldf的备份文件还原刚才删除的SPJ数据库。(附加) (9)将SPJ数据库的文件大小修改为100MB。 (10)修改S表,增加一个联系电话的字段sPhoneNo,数据类型为字符串类 型。 2.利用SQL语言创建和删除数据库和数据表(50分,每小题5分) ●数据库和表的要求 数据库名:Student,其中包含三个表:S:学生基本信息表;C:课程基本信息表;SC:学生选课信息表。 ●完成以下具体操作: (1)用SQL语句创建如图2.5-图2.7要求的数据库Student,初始大小为20MB, 最大为100MB,数据库自动增长,增长方式是按10M兆字节增长;日志文件初

数据库实验报告

合肥工业大学实验报告一 课程名称:数据库系统原理及应用学号: 20095382 姓名:魏泽民 专业班级:电子商务09-1班 指导教师:马华伟 二零一一年十月

一、实验目的: (1)熟练掌握数据更新语句,灵活地操作插入数据、修改数据和删除数据; (2)熟练掌握关系数据库中的完整性概念的应用; (3)了解数据录入的方法和过程。 (4)掌握单表查询的基本方法; (5)掌握连接查询的基本方法; (6)熟练掌握以下练习,并进行以下各类查询: ①选择表中的若干列、查询全部列、查询经过计算的值; ②选择表中的若干元组,即消除取值重复的行与查询满足指定条件的元组(包 括:比较大小、确定范围、确定集合、字符匹配、涉及空值和多种条件查询); ③对查询结果排序; ④使用集函数; ⑤对查询结果分组 (7)熟练掌握以下练习,并进行下列各类连接查询: ①等值与非等值连接查询; ②自身连接; ③外连接; ④复合条件连接; (8)掌握嵌套查询的基本方法; (9)掌握集合查询的基本方法; (10)熟练掌握查询视图操作 (11)熟练掌握更新视图操作 (12)熟练关系的完整性概念,领会视图的用途 (13)练习以下各类查询: ①带有IN谓词的子查询; ②带有比较运算符的子查询; ③带有ANY或ALL谓词的子查询; ④带有EXISTS谓词的子查询; ⑤视图查询与更新操作; 二、实验要求: (1)为了便于程序正确性测试,需要对自己建立起来的数据表录入一些模拟数据(模拟数据是指符合数据格式要求的假数据),然后按照教材中结构化查询语言SQL章节例题和习题自己组织SQL语句:

(2)设计的SQL程序应该涵盖数据更新操作的全部内容不,包括插入、修改、删除; (3)综合运用SQL语句实现数据插入、修改、删除等操作的综合运用能力。 (4)按照SQL语言编程要求,实现各类查询和检索操作; (5)利用后台的SQL平台环境,编程验证数据库的控制保护功能。 (6)将查询视图命令等价改写为对数据表的查询操作命令,利用SQL编程设计完成并进行效率分析。 三、实验内容: (1)根据以下给定的数据表信息分别对student, course, score, teacher, teching 表进行数据插入和修改,以完成给定的数据录入,同时要求输入班级同学名录模拟客观真实情况,给student、score表添加30条以上记录,以便以后查询应用方便。 Student表:

分布式计算环境实验报告

分布式计算环境实验报告 实验名称:在虚拟机下安装Linux系统和 Hadoop 专业班级:网络1101 学生学号:3110610007 学生姓名:平淑容

目录 实验目的..............................................................................P 实验仪器...............................................................................P 实验内容和步骤...................................................................P 安装过程的问题以及解决方法............................................P 代码运行以及实验结果.......................................................P 运行过程中的问题................................................................P 实验总结................................................................................P

一、实验目的 在虚拟机上安装CentOS系统并在Linux系统上安装Hadoop单机模式并且执行一个Java程序。 二、实验仪器 硬件:虚拟机CentOS 软件:Windows 7操作系统 三、实验内容及步骤 实验内容 一、安装虚拟机 二、安装Linux操作系统 三、设置静态ip 四、修改主机名 四、绑定ip和主机 五、关闭防护墙 六、关闭防火墙的自动运行 七、设置ssh 八、安装JDK 九、安装Hadoop 十、在单机上运行Hadoop 十一、Hadoop执行Java程序 实验步骤: 一、安装虚拟机 此处安装的虚拟机是VMware Workstation版本,直接从压缩包里面解压安装即可,此处不做过多介绍。 二、安装Linux系统 此处安装的Linux系统使用的是CentOS版本,直接从压缩包里面解压,然后使用VMware Workstation打开,打开之后选择开机输入用户名和密码进入linux系统。 三、Hadoop的伪分布安装步骤 1.设置静态IP ①在centOS桌面的右上角选择图标,右击修改ip值,选择静 态ip,输入需要增加的ip值、默认网关。

甘特图实验报告doc

甘特图实验报告 篇一:Project实验报告 Project实验报告 朱曦朦 学号:XX306202412信管1001 实验目的: 通过做出一个标准的实验,了解project的基本运用方法和实验步骤,掌握设定项目的开始日期的基本方法。完成资源的优化配置,实现资源的充分利用。并对工期做一个初步的调整, 提高估计工期的精确度,掌握PERT的方法,实现整个过程(本文来自:https://www.360docs.net/doc/d417961245.html, 小草范文网:甘特图实验报告)的最优配置。对甘特图,关键路径等基本定义有一个初步的了解,初步学习到PROJECT的基本内容。 一;定义起始时间: 在定义项目中进行时间的确认: 一直保存至第三步,进行初始化的设定。 二复制新产品模板. 三调整资源的最大单位 修改资源“产品工程设计”的最大单位为200%,并增加资源“生产线”(工时资源,100%,用于完成生产任务,原来工程师需要5小时完成的任务,生产线只要1小时就能完

成,但必须同时配1名产品工程设计进行监控)。 通过视图进入资源工作表,将“产品工程设计”的最大单位改为 200% 在甘特图中未找到工程师,所以未对其进行修改。 三.为了提高估计工期的精确度,采用PERT技术规划项目工期(选取2到3个任务进行规划)。 设置PERT权重 设置后观察得到PERT项工作表。 选取2,3个项目后确定乐观工期,预期工期,悲观工期,通过计算PERT得出结论。 四.分析项目工期由哪些任务决定,确定压缩工期的方法。通过格式中的甘特图向导,对关键路径进行确认,从而得到确定项目工期的任务,由红线显示。编号为2,3,5,6,8,9,10, 11 对项目进行优化,可以通过2种路径,一是调整关键路径的工期,将其缩短。二是删除原有的链接关系,将后面的工期开始时间提前,如下图所示。 篇二:MS Project 上机实验报告 MS Project 上机实验报告 一、工程概况

数据库实验报告2

理工大学信息工程与自动化学院学生实验报告 (2011 —2012 学年第 1 学期) 课程名称:数据库系统教程开课实验室:信自楼445 2011 年11月 27日 一、上机目的及容 1.上机容: SQL的数据查询,查询、插入、删除、修改 2.上机目的: 掌握数据查询语句,并能熟练应用 二、实验原理及基本技术路线图(方框原理图或程序流程图) 在SQL server 2008软件中的查询中,输入SQL代码 三、所用仪器、材料(设备名称、型号、规格等或使用软件) 1台PC及SQL server 2008软件 四、实验方法、步骤(或:程序代码或操作过程) 1)select查询 单表查询:查询全体学生的学号及: SELECT SNO,SNAME FROM S;

查询全体学生的全部信息: SELECT*FROM S; 2)查询经过计算值 (SELECT子句的<目标列表达式>为表达式,表达式可以是:算术表达式、字符串常量、函数、列别名等) 查全体学生的学号、及其出生年份: SELECT SNO,SNAME,2012-AGE FROM S;

查询全体学生的、出生年份和所属系: SELECT SNO,SNAME,2012-AGE,SDEPT FROM S; 查询选修了课程的学生学号: SELECT SNO FROM SC,C WHERE https://www.360docs.net/doc/d417961245.html,O=https://www.360docs.net/doc/d417961245.html,O; 为了避免这种不合题意的情况,我们用distinct用了去除重复的元组。所以上例中的执行语句为: SELECT DISTINCT SNO FROM SC;

SELECT DISTINCT SNO FROM SC,C WHERE https://www.360docs.net/doc/d417961245.html,O=https://www.360docs.net/doc/d417961245.html,O; 查询选修课程的各种成绩: SELECT CNO,GRADE FROM SC; SELECT DISTINCT CNO,DISTINCT GRADE FROM SC; SELECT CNO,DISTINCT GRADE FROM SC; SELECT DISTINCT CNO,GRADE FROM SC;

数据库实验报告完整

华北电力大学 实验报告 | | 实验名称数据库实验 课程名称数据库 | | 专业班级:学生姓名: 学号:成绩: 指导教师:实验日期: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.完成用户界面的设计,对重要数据进行加密。

数据库应用开发实验报告

学生实验报告 (理工类) 课程名称:数据库应用开发专业班级: 学生学号:学生姓名: 所属院部:国际软件学院指导教师: 2013 ——2014 学年第 2 学期 金陵科技学院教务处制

实验报告书写要求 实验报告原则上要求学生手写,要求书写工整。若因课程特点需打印的,要遵照以下字体、字号、间距等的具体要求。纸张一律采用A4的纸张。 实验报告书写说明 实验报告中一至四项内容为必填项,包括实验目的和要求;实验仪器和设备;实验内容与过程;实验结果与分析。各院部可根据学科特点和实验具体要求增加项目。 填写注意事项 (1)细致观察,及时、准确、如实记录。 (2)准确说明,层次清晰。 (3)尽量采用专用术语来说明事物。 (4)外文、符号、公式要准确,应使用统一规定的名词和符号。 (5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处。 实验报告批改说明 实验报告的批改要及时、认真、仔细,一律用红色笔批改。实验报告的批改成绩采用百分制,具体评分标准由各院部自行制定。 实验报告装订要求 实验批改完毕后,任课老师将每门课程的每个实验项目的实验报告以自然班为单位、按学号升序排列,装订成册,并附上一份该门课程的实验大纲。 实验项目名称: SQL Server概述及体系架构实验学时: 3 实验地点: B407 实验日期: 2014.4.3 实验成绩: 批改教师:罗扬批改时间: 一、实验目的和要求 1、熟悉Microsoft SQL Server 2005系统环境,包括发展历史、版本与组件及新特性; 2、了解客户/服务器、浏览器/服务器体系结构; 3、掌握系统数据库对象及构成、SQL Server 2005的常用管理工具; 4、熟悉SQL Server 2005 Management Studio平台及组件。

project项目管理实验报告

计算机辅助项目管理 课程报告 班级: 学号: 姓名: 指导教师: 完成日期: -

目录 1、项目概况 (2) 1.1项目简介 (3) 1.2项目任务关系、固定成本及资源需求量 (2) 1.3可用资源 (2) 2、项目的实施计划 (3) 2.1初始计划 (3) 2.2初始计划的调整和优化 (5) 3、跟踪监控 3.1第一轮监控 (7) 3.2第二轮监控 (21) 3.3第三轮监控 (25) 3.4第四轮监控 (25) 4、项目完工总结分析报告 4.1总结分析报告 (26) 4.2分析实施和管理的成效 (26) 4.3目标实现措施的分析 (26) 5.学习思考总结 5.1问题思考 (27) 5.2问题分析与总结 (28) PROJECT项目管理课程报告

1、项目概况 1.1项目简介 项目的主要工作是维修某主要道路下一段长约1公里的供水管道,市政局要求电力部门配合施工,同时铺设一条地下电缆,以增加该道路两侧的用电用户。由于该项目是在现有道路上开挖,故市政局决定在回填后顺便铺设新的混凝土路面。为此,专门成立了一个项目管理办公室,以管理、协调该项目。项目内容包括:供水工程、电力工程和道路工程。整个项目从2016年7月1日提交预算报批为开始,市政局希望将项目施工对公众造成的影响降至最低,故希望该项目能在2016年10月底竣工并恢复交通。 1.2项目任务关系、固定成本及资源需求量 项目各项任务逻辑关系及固定成本(设备费、材料费等)、资源需求量如表1。 表1 工程工艺关系、固定成本及所需资源表 编号工序名称固定 成本 紧前 工序 资源需求 技工壮工 人数工日人数工日 1 道路及配套工程 2 准备工作 3 预算报批5000 4 对外公告1500 3 5 开走路上停留 的车辆 2000 4 3 6 6 开挖槽沟50000 5 15 200 7 供水工程5000 8 维修水管50000 6 12 200 35 500 9 压力试验1500 8 5 10 10 电力工程 11 支设新电杆15000 5 5 50 10 75 12 铺设电缆50000 6 8 50 25 150 13 吊装变压器75000 11,12,16 15 100 25 250 14 电力入户25000 13 20 240 20 240 15 道路工程25000 16 剪除树枝1500 5 6 12 17 复铺路面150000 9,12 20 300 30 420 18 恢复交通14,17 预算报批需1周,对外公告需2周时间。 1.3可用资源

数据库原理实验报告二.pdf

LIAOCHENG UNIVERSITY 计算机学院实验报告 【2015 ~2016 学年第 2 学期】 【一、基本信息】 【实验课程】数据库原理与应用 【设课形式】独立□非独立【课程学分】 【实验项目】实验二、SQL数据操作及查询 【项目类型】基础综合□设计□研究创新□其它[ ]【项目学时】4【学生姓名】傅雪晨【学号】59 【系别专业】电子商务 【实验班组】 【同组学生】 【实验室名】综合实验楼 【实验日期】【报告日期】 【二、实验教师对报告的最终评价及处理意见】 实验成绩:(涂改无效) 指导教师签名:年月日注:要将实验项目、实验课程的成绩评定及课程考核办法明确告知学生,并报实验管理中心备案

【三、实验预习】 实验条件(实验设备、软件、材料等): 实验2 SQL数据操作及查询 实验目的: 1. 向实验1建立的表中添加数据(元组), 掌握INSERT语句的用法; 2. 修改基本表中的数据, 掌握UPDATE语句的用法; 3. 删除基本表中的数据,掌握DELETE语句的用法; 4. 体会数据完整性约束的作用, 加深对数据完整性及其约束的理解。 5. 熟练掌握SELECT语句,能够运用该语句完成各种查询。 实验内容: 1.使用INSERT语句将教材P82表中的数据添加到数据库STUDENTDB中. 2. Insert into student59 select'1','李勇','男','20','CS','',''union select'2','刘晨','女','19','CS','',''union select'3','王敏','女','18','MA','',''union select'5','张立','男','19','IS','','' select*from student59 select*from course59 select*from sc59 alter table course59NOCHECK Constraint fk_cpno Insert into course59 select'1','数据库','5','4'union select'2','数学','','2'union select'3','信息系统','1','4'union select'4','操作系统','6','3'union select'5','数据结构','7','4'union select'6','数据处理','','2'union select'7','PASCAL语言','6','4' alter table course59CHECK Constraint FK_course59_course59 Insert into sc59 select'1','1',92 union select'1','2',85 union select'1','3',88 union select'2','2',90 union select'2','3',80 alter table sc59CHECK Constraint fk_S_c alter table sc59NOCHECKConstraint fk_S_c

分布式系统导论实验报告

分布式系统导论 实验报告 实验(3)名称面向连接的流模式Socket 实验(4)名称三层C/S结构 实验人学号 1007XXX姓名 XXX 实验日期 2013年5月20日 报告完成日期 2013年5月21日 成绩指导教师签字 年月日

目录: 一、实验3面向连接的流模式Socket (2) 二、实验4三层C/S结构 (4) 2.1 任务一:通过无连接数据报socket实现C/S应用 (4) 2.2任务二:通过面向连接的流模式socket实现C/S应用 (6) 三、实验心得 (8)

一、实验3面向连接的流模式Socket 1、实验目标:尝试通过面向流模式的socket实现通信。 2、实验原理: 2.1、socket通常也称作"套接字",用于描述IP地址和端口,是一个 通信链的句柄。应用程序通常通过"套接字"向网络发出请求或者应答网络请求。Socket和ServerSocket类库位于https://www.360docs.net/doc/d417961245.html,包中。 ServerSocket用于服务器端,Socket是建立网络连接时使用的。 在连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成所需的会话。 2.2、面向连接的操作使用TCP协议.一个这个模式下的socket必须 在发送数据之前与目的地的socket取得一个连接.一旦连接建立了,sockets就可以使用一个流接口:打开-读-写-关闭.所有的发送的信息都会在另一端以同样的顺序被接收.面向连接的操作比无连接的操作效率更低,但是数据的安全性更高. 3、实验内容: 创建一个服务端的程序,以接受一个连接并用流模式socket接受一个消息。创建一个名为客户端程序。此程序可以请求一个连接,并使用流模式socket。 实验所用到的基本函数解释: 1)serverSocket(int port)指定的IP和端口创建一ServerSocket 对象 2)socket accept()服务端和客户端握手

关键路径的查找实验报告

中国矿业大学矿业工程学院 实验报告 课程名称计算机软件设计基础 姓名 xxxx 班级采矿10-8班学号 xxxxx 日期 2012年10月 成绩教师 xxxx

3.2算法步骤:

(1)输入e条弧,建立AOE网的存储结构。 (2)从源点v1出发,令ve(1)=0,求ve(j),2<=j<=n。 (3)从汇点vn出发,令vl(n)=ve(n),求vl(i) 1<=i<=n-1。 (4)根据各顶点的ve和vl值,求每条弧s(活动)的最早开始时间e(s)和最晚开始时间l(s),其中e(s)=l(s)的为关键活动。 总结 首先,关于程序方面,我发现即使对设计思路有了眉目,知道了所要用到的数据结构、用邻接表来存储AOE-网、建立栈来求拓扑序列、输出的拓扑序列的个数少于节点数则有回路等等,要把这些方法写成函数代码,其实还是一件非常不容易的事情。再加上要完善设计思路,构造整个程序框架在内,都是一件工作量非常大的工作。 在处理程序代码的时候,有两个问题始终解决不了。一是程序输入时只能输入整形数据,而非整形的输入则会导致程序异常停止,但是因为整形的输入方式已贯穿整个程序,若要修改只能另外重做整个程序,所以暂不考虑修改,而打算做一个判错系统,判断若非整形的输入则报错;二是第一种错误的解决方案未能成功实行,于网路上搜索到了几种判断是否为整形数据的程序代码,但将其修改融合到求关键路径的程序中,虽然没有错误可以运行,但是却不能正确的报错。 于是,在尝试多种方案却仍不成功的前提下,我只好选择加上提示语,即:printf("请输入某项目的信息,并请用整形数字表示(格式:弧头,

数据库实验报告2

数据库原理实验报告 姓名:学号:班级: 实验日期:03/30/2017 实验名称:数据库创建与管理 实验二数据库创建与管理 一、实验目的 1.熟练掌握界面方式创建和管理数据库。 2.熟练掌握查询编辑器T-SQL语句创建和管理数据库。 3.熟练掌握备份和还原数据库。 二、实验器材 1、接入Internet的计算机主机; 三、实验内容 1、界面方式创建和管理数据库 (1)创建数据库 (2)修改数据库

(3)删除数据库(使用右键) 2、利用企业管理器备份和还原数据库(1)备份数据库 (2)还原数据库(操作->右键)

(1)创建SPJ数据库:“新建查询”,输入以下语句并运行 CREATE DATABASE SPJ ON (NAME=’SPJ_Data’,FELENAME='C:\Program Files\Microsoft SQL Server\MSSQL\data\SPJ_Data.MDF' , SIZE = 3, MAXSIZE = 10, FILEGROWTH = 10%) LOG ON (NAME = 'SPJ_Log', FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL\data\SPJ_Log.LDF' ,

SIZE = 1, FILEGROWTH = 10%) (2)修改SPJ数据库:在查询分析器中输入以下语句并运行 ALTER DATABASE SPJ MODIFY FILE (NAME='SPJ_Data', SIZE=4, MAXSIZE=UNLIMITED) ALTER DATABASE SPJ ADD FILE (NAME='SPJ_Data_2', FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL\Data\SPJ_Date_2.ndf',SIZE=1, MAXSIZE=10, FILEGROWTH=10%) (3)删除SPJ数据库:DROP DA TABASE SPJ

Project实验报告

Project实验报告 朱曦朦 学号:2010306202412 信管1001 实验目的: 通过做出一个标准的实验,了解project的基本运用方法和实验步骤,掌握设定项目的开始日期的基本方法。完成资源的优化配置,实现资源的充分利用。并对工期做一个初步的调整, 提高估计工期的精确度,掌握PERT的方法,实现整个过程的最优配置。对甘特图,关键路径等基本定义有一个初步的了解,初步学习到PROJECT的基本内容。 一;定义起始时间:

在定义项目中进行时间的确认: 一直保存至第三步,进行初始化的设定。二复制新产品模板.

三调整资源的最大单位 修改资源“产品工程设计”的最大单位为200%,并增加资源“生产线”(工时资源,100%,用于完成生产任务,原来工程师需要5小时完成的任务,生产线只要1小时就能完成,但必须同时配1名产品工程设计进行监控)。 通过视图进入资源工作表,将“产品工程设计”的最大单位改为200% 在甘特图中未找到工程师,所以未对其进行修改。

三.为了提高估计工期的精确度,采用PERT技术规划项目工期(选取2到3个任务进行规划)。 设置PERT权重 设置后观察得到PERT项工作表。 选取2,3个项目后确定乐观工期,预期工期,悲观工期,通过计算PERT得出结论。

四.分析项目工期由哪些任务决定,确定压缩工期的方法。通过格式中的甘特图向导,对关键路径进行确认,从而得到确定项目工期的任务,由红线显 示。编号为2,3,5,6,8,9,10,11 的链接关系,将后面的工期开始时间提前,如下图所示。

实验总结: 通过按要求做实验,初步掌握的project的基本方法,但大部分还是按照书本的内容照搬,自己缺乏独立的融会贯通并将只是运用到实际甘特图中,并且,在有一些需要拓展的部分自己还是缺乏想法,没能很好地掌握知识。后面还需要多加练习,对制图还有一定的兴趣,但还是缺乏足够的训练。

数据库实验报告二

《数据库原理》实验报告 实验三: 数据库完整性与安全性控 制 实验四: 视图与索引 学号姓名 班级日期 2013302534 杨添文10011303 2015.10.1 7 实验三:数据完整性与安全性控制 一、实验内容 1.利用图形用户界面对实验一中所创建的Student库的S表中,增加以下的约束和索引。 (18分,每小题3分) (1)非空约束:为出生日期添加非空约束。 (2)主键约束:将学号(sno)设置为主键,主键名为pk_sno。 (3)唯一约束:为姓名(sname)添加唯一约束(唯一键),约束名为uk_sname。 (4)缺省约束:为性别(ssex)添加默认值,其值为“男”。 (5)CHECK约束:为SC表的成绩(grade)添加CHECK约束,约束名为ck_grade,其检查 条件为:成绩应该在0-100之间。

(6)外键约束:为SC表添加外键约束,将sno,cno设置为外键,其引用表为分别是S 表和C表,外键名称分别为fk_sno,fk_cno。 2.在图形用户界面中删除上小题中已经创建的各种约束,用SQL语言分别重新创建第1小题中的(2)-(6)小题。(15分,每小题3分,提示:alter table add constraint)(2)alter table s add constraint pk_sno primary key(sno) (3)alter table s add constraint uk_sname unique(sname) (4)alter table s add constraint a default('男')for ssex (5) alter table sc add constraint ck_grade check(grade between 0 and 100) (6) alter table sc add constraint fk_sno foreign key(sno)references s(sno) alter table sc add constraint fk_cno foreign key(cno)references c(cno)

数据库实验报告4

数据库-实验报告4 学号:11122604 姓名:陆亮 第4周(第四章:数据更新、视图、嵌入式SQL部分自学) 一、实验课: 1.建立计算机学院总评不及格成绩学生的视图,包括学生学号、姓名、性别、手机、所选 课程和成绩。 2.在E表中插入记录,把每个学生没学过的课程都插入到E表中,使得每个学生都选修每 门课。 3.求年龄大于所有女同学年龄的男学生姓名和年龄。 4.在E表中修改08305001课程的平时成绩,若成绩小于等于75分时提高5%,若成绩大于 75分时提高4%。 5.删除没有开课的学院。//删除记录而不是表。删除表要用其他。 6.查询优、良、中、及格、不及格学生人数 二,代码: create view student_fail(xh,xm,xb,sjhm,kh,zpcj)as(select distinct S.xh,S.xm,S.xb,S.sjhm,E.kh,E.zpcj from S,E where S.xh=E.xh and E.zpcj<'60'); insert into E select distinct S.xh,O.xq,O.kh,O.gh ,null,null,null from S,O where not exists(select*from E where E.xh =S.xh and E.kh =O.kh ); select S.xm,S.csrq from S where S.csrq<(select min(csrq)from S group by S.xb having xb ='女') update E set pscj = pscj*1.04 where pscj>75; update E set pscj = pscj*1.05 where pscj<75; delete from D where yxh not in(select yxh from T ,O where T.gh = O.gh)

电商实验报告

《电子商务》实验报告一 开课实验室:电子商务实验室 学院班级学号姓名成绩 课程名称电子商务 实验项目 名称 网络检索工具的使用指导教师 一、实验目的 掌握利用网络检索工具检索商务信息的基本方法 二、实验内容 1、通过搜索引擎实现网络商务信息的采集。 2、通过图书馆专业数据库检索电子商务研究文献 三、实验步骤及要求 1、登录主要搜索引擎网站,如谷歌、百度,使用其高级检索工具检索: B2B、B2C、C2C、B2B2B、B2B2C网站的主要功能、类型、代表网站、发展现状、最新资讯。 2、登录校图书馆的专业期刊数据库,如:清华同方数据库、维普数据库、万方数据库使用检索工具检索下列资料:“我国农业电子商务的模式”“电子商务的盈利模式”。要求每个题目检索资料不少于十篇,并根据检索文献回答:(要求原创、每题不少于400字),在观点之后列出参考文献(至少10篇)。 (1)我国农业电子商务的模式有哪些? (2)目前电子商务又有哪些新的盈利模式? 3、登录并熟悉以下网站:(专科生不用作此题) 工业和信息化部网站 中国互联网信息中心 中国行业研究网 艾瑞市场咨询网 通过以上网站,查找我国电子商务发展相关的最新统计数据。 中国调查网 问道调查网 调查网 通过以上三个网络了解开展网上调查问卷的方法 四、注意事项: 1、利用搜索引擎检索商务信息时,选择恰当的关键词和检索组合,有助于得到较好的检索结果。 2、检索文献前,请先在专业数据库网站上下载阅读器。 3、格式要求: 字体:宋体小四 行间据:单倍 参考文献格式:1、作者“文章名”期刊名 ****年第几期 五、实验报告内容: 『一』答: 一、B2B网站

网络计划实验报告

PERT 实验 商业中心建设活动持续时间表 活动紧前活动需要时间(周) A 设计-20 B 批准-10 C 招标A, B8 D 建设C24 E 外装修D8 F 谈判A,B14 G 签约F10 H 区域分割D, G6 I 内装修H12 J 进驻I, E6 正常正常加急加急最大成本/时间 时间成本时间成本减少比率 A*203012808 6.25 B101010100- C*8106162 3.0 D*24 230020 2340410.0 E8110 4 1204 2.5 F141210204 2.0 G1*******- H* 6202254 1.25 I* 12160101702 5.0 J*6106100- 根据以上表格给出的信息,用PERT软件画出项目网络计划图,并进行网络计算与优化设计。

网络计划方法: 大型项目的开发涉及很复杂的项目协调和管理问题,为使项目管理人员对项目进度有全面的了解,进行有效的控制,必须使用科学的管理方法;网络计划法是使用最广泛的方法之一,关键路径法(critical path method 缩写为CPM)和项目评审技术(program evaluation and review technique 缩写为PERT)是两种使用最广泛的网络计划技术。网络计划方法的优点使它适用于生产技术复杂,工作项目繁多,且紧密联系的一些跨部门的工作计划,如:新产品研制开发;大型工程项目建设;生产技术准备;复杂设备的大修计划。 网络计划方法的基本原理: 将工程项目分解为相对独立的活动,根据各活动先后顺序、相互关系以及完成所需时间做出反映项目全貌的网络图;从项目完成全过程着眼,找出影响项目进度的关键活动和关键路线,通过对资源的优化调度,实现对项目实施的有效控制和管理。 网络计划方法的主要功能: 1用网络图描述一个实际项目的管理问题 (画网络图); 2计算项目的最早、最晚完成和开工时间 (网络计算); 3寻找关键活动和关键路径(网络分析); 4根据以上分析对网络进行优化 PERT网络分析法 PERT网络分析法(计划评估和审查审技术,Program Evaluation and Review Technique) PERT(Program Evaluation and Review Technique)即计划评审技术,最早是由美国海军在计划和控制北极星导弹的研制时发展起来的。PERT技术使原先估计的研制北极星潜艇的时间缩短了两年。简单地说,PERT是利用网络分析制定计划以及对计划予以评价的技术,它能协调整个计划的各道工序,合理安排人力、物力、时间、资金,加速计划的完成。在现代计划的编制和分析手段上,PERT被广泛的使用,是现代化管理的重要手段和方法。 一.画网络图 画网络图应注意以下规则: 1、按工作本身的逻辑顺序连接箭线 2、网络图中不允许出现循环线路 3、在网络图中不允许出现代号相同的箭线 4、在一个网络图中只允许有一个起点节点,一般只允许出现一个终点节点(多目标网络图除外) 5、在网络图中不允许出现有双向箭头或无箭头的线段 6、网

数据库原理实验报告(2)

南京晓庄学院 《数据库原理与应用》 课程实验报告 实验二数据库的创建、管理、备份及还原实验 所在院(系):数学与信息技术学院 班级:11软工转本2 学号: 1130708 11130710 姓名:马琦乔凌杰

1.实验目的 (1)掌握分别使用SQL Server Management Studio图形界面和Transact-SQL语句创建和修改 数据库的基本方法; (2)学习使用SQL Server查询分析窗口接收Transact-SQL语句和进行结果分析。 (3)了解SQL Server的数据库备份和恢复机制,掌握SQL Server中数据库备份与还原的方 法。 2.实验要求 (1)使用SQL Server Management Studio创建“教学管理”数据库。 (2)使用SQL Server Management Studio修改和删除“教学管理”数据库。 (3)使用Transact-SQL语句创建“教学管理”数据库。 (4)使用Transact-SQL语句修改和删除“教学管理”数据库。 (5)使用SQL Server Management Studio创建“备份设备”;使用SQL Server Management Studio对数据库“教学管理”进行备份和还原。 (6)SQL Server 2005数据库文件的分离与附加。 (7)按要求完成实验报告 3.实验步骤、结果和总结实验步骤/结果 (1) 总结使用SQL Server Management Studio创建、修改和册除“TM”(教学管理)数据库的过程。 新建数据库如下图所示: 进入sql server management studio 主界面,选择数据库右击新建数据库。 如何修改数据库 进入sql server management studio 主界面,选择数据库右击属性即可看到数据库信息,可更改数据库基本信息。

数据库原理实验报告四(有答案)

南京晓庄学院 《数据库原理与应用》课程实验报告 实验四查询设计实验 所在院(系):数学与信息技术学院 班级: 学号: 姓名:

1.实验目的 (1)了解查询的目的,掌握SELECT语句的基本语法和查询条件的表示方法。 (2)掌握数据排序和数据联接查询的方法。 (3)掌握SQL Server查询分析器的使用方法。 2.实验要求 (1)针对“TM”数据库,在SQL Server查询分析器中,用T-SQL语句实现以下单表查询 操作,并将将调试成功的T-SQL命令,填入实验报告中。 a)查询所有课程的详细情况。 b)查询来自江苏或山东的学生学号和姓名,并以中文名称显示输出的列名。 c)查询选修了课程的学生学号(一人选了多门课程的话,学号只显示一次)。 d)查询选修课程号为07253001的学号和成绩,并要求对查询结果按成绩降 序排列,如果成绩相同则按学号升序排列。 e)查询所有学生的学号、姓名和年龄。 f)查询选修课程号为07253001的成绩在85-95之间的学生学号和成绩,并 将成绩乘以0.7输出。 g)查询数学与信息技术学院(DEPT_ID为07)或物理与电子工程学院 (DEPT_ID为09)姓张的学生的信息。。 h)查询所有核心课程(课程名中带*的)的情况。 i)查询缺少了成绩的学生的学号和课程号,查询结果按课程号升序排列。 (2)在SQL Server查询分析器中,用T-SQL语句实现下列数据联接查询操作: a)查询每个学生的情况以及他(她)所选修的课程。 b)查询学生的学号、姓名、选修的课程名及成绩。 c)查询选修C语言程序设计且成绩为85分以上的学生学号、姓名及成绩。 d)查询和学生柏文楠是同一个民族的学生(用自身联接实现)。 e)分别用等值联接和内联接查询有授课记录的老师的姓名。 f)用外联接查询所有老师的授课情况,输出老师的工号、姓名、职称、院 系、担任的课程号和授课的学期,结果按院系和职称升序排列。如果该 老师没有授课历史,在课程号和授课的学期中显示空值 (3)在SQL Server Management Studio中新建查询,完成以上查询命令的同时,熟悉SQL编 辑器工具栏中各快捷按钮的作用。 (4)按要求完成实验报告。

相关文档
最新文档