当前位置:文档之家› 广东工业大学实验报告书的版头(A4纸)

广东工业大学实验报告书的版头(A4纸)

广东工业大学实验报告书的版头(A4纸)

广东工业大学实验报告学院(系)专业班成绩评定______ _

实验_ __ 题目:第周星期广东工业大学实验报告学院(系)专业班成绩评定______ _

实验_ __ 题目:第周星期

(完整版)数据结构实验报告全集

数据结构实验报告全集 实验一线性表基本操作和简单程序 1 .实验目的 (1 )掌握使用Visual C++ 6.0 上机调试程序的基本方法; (2 )掌握线性表的基本操作:初始化、插入、删除、取数据元素等运算在顺序存储结构和链表存储结构上的程序设计方法。 2 .实验要求 (1 )认真阅读和掌握和本实验相关的教材内容。 (2 )认真阅读和掌握本章相关内容的程序。 (3 )上机运行程序。 (4 )保存和打印出程序的运行结果,并结合程序进行分析。 (5 )按照你对线性表的操作需要,重新改写主程序并运行,打印出文件清单和运行结果 实验代码: 1)头文件模块 #include iostream.h>// 头文件 #include// 库头文件------ 动态分配内存空间 typedef int elemtype;// 定义数据域的类型 typedef struct linknode// 定义结点类型 { elemtype data;// 定义数据域 struct linknode *next;// 定义结点指针 }nodetype; 2)创建单链表

nodetype *create()// 建立单链表,由用户输入各结点data 域之值, // 以0 表示输入结束 { elemtype d;// 定义数据元素d nodetype *h=NULL,*s,*t;// 定义结点指针 int i=1; cout<<" 建立一个单链表"<> d; if(d==0) break;// 以0 表示输入结束 if(i==1)// 建立第一个结点 { h=(nodetype*)malloc(sizeof(nodetype));// 表示指针h h->data=d;h->next=NULL;t=h;//h 是头指针 } else// 建立其余结点 { s=(nodetype*) malloc(sizeof(nodetype)); s->data=d;s->next=NULL;t->next=s; t=s;//t 始终指向生成的单链表的最后一个节点

数据结构实验报告-动态查找表实验报告

数据结构实验报告题目:动态查找表 学院计算机 专业计算机科学与技术年级班别2009级 2 班 学号3109005935 学生姓名黄丽敏 指导教师吴伟民 成绩____________________ 2011年6月

一. 动态查找表: 抽象数据类型动态查找表的定义如下: ADT DynamicSearchTable { 数据对象D:D是具有相同特性的数据元素的集合。各个数据元素均含有类型相同,可唯一标识数据元素的关键字 数据关系R:数据元素同属一个集合。 基本操作P: InitDSTable(&DT); 操作结果:构造一个空的动态查找表DT。 DestroyDSTable(&DT) 初始条件:动态查找表DT存在。 操作结果:销毁动态查找表DT。 SearchDSTable(DT,key); 初始条件:动态查找表DT存在,key为和关键字类型相同的给定值。 操作结果:若DT中存在其关键字等于key的数据元素,则函数值为该元素的值或在表中的位置,否则为“空”。 InsertDSTable(&DT,e); 初始条件:动态查找表DT存在,e为待插入的数据元素。 操作结果:若DT中不存在其关键字等于e.key的数据元素,则插入e到DT。 DeleteDSTable(&DT,key); 初始条件:动态查找表DT存在,key为和关键字类型相同的给定值。 操作结果:若DT中存在其关键字等于key的数据元素,则删除之。 TraverseDSTable(DT,visit()); 初始条件:动态查找表DT存在,visit是对结点操作的应用函数。 操作结果:按某种次序对DT的每个结点调用函数visit()一次且至多一次,一旦visit()失败,则操作失败。 }ADT DynamicSearchTable 二. 存储结构定义: 公用头文件DS0.h和宏定义: #include /* EOF(=^Z或F6),NULL */ #include #define TRUE 1 #define FALSE 0 #define OK 1 #define N 10 /* 数据元素个数 */ typedef int Status; /* Status是函数的类型,其值是函数结果状态代码,如OK等 */ typedef int KeyType; /* 设关键字域为整型 */ #define EQ(a,b) ((a)==(b)) #define LT(a,b) ((a)<(b))

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

实验一数据库及基本表的建立 一、实验目的 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、[判断题]Ⅲ类放射源为危险源。在没有防护情况下,接触这类源几小时就可对人造成永久性损伤,接触几天至几周也可致人死亡。(分值)你的答案:正确

数据结构实验报告

数据结构实验报告 一.题目要求 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

2015广工操作系统实验报告(文档最后含源码下载地址)

操作系统实验报告 学生学院____ 计算机学院______ 专业班级13级计科9 学 号 学生姓名 指导教师 李敏 2015年12月29日

实验一进程调度实验 一、实验目的 用高级语言编写和调试一个进程调度程序,以加深对进程的概念及进程调度算法的理解。 二、实验内容和要求 设计一个有N个进程共行的进程调度程序。要求采用最高优先数优先的调度算法(即把处理机分配给优先数最高的进程),时间片轮转算法,多级反馈队列调度算法这三种算法。 每个进程有一个进程控制块(PCB)表示。进程控制块可以包含如下信息:进程名、优先数、到达时间、需要运行时间、已用CPU时间、进程状态等等。 进程的优先数及需要的运行时间可以事先人为地指定(也可以由随机数产生)。进程的到达时间为进程输入的时间。进程的运行时间以时间片为单位进行计算。 每个进程的状态可以是就绪W(Wait)、运行R(Run)、或完成F(Finish)三种状态之一。 就绪进程获得CPU后都只能运行一个时间片。用已占用CPU时间加1来表示。 如果运行一个时间片后,进程的已占用CPU时间已达到所需要的运行时间,则撤消该进程,如果运行一个时间片后进程的已占用CPU时间还未达所需要的运行时间,也就是进程还需要继续运行,此时应将进程的优先数减1(即降低一级),然后把它插入就绪队列等待CPU。每进行一次调度程序都打印一次运行进程、就绪队列、以及各个进程的PCB,以便进行检查。 重复以上过程,直到所要进程都完成为止。 三、实验主要仪器设备和材料 实验环境 硬件环境:IBM-PC或兼容机 软件环境:C++、C语言编程环境 四、实验方法 1、编写并调试一个模拟的进程调度程序,采用“最高优先数优先”调度算法对五个进程进行调度。 “最高优先数优先”调度算法的基本思想是把CPU分配给就绪队列中优先数最高的进程。 静态优先数是在创建进程时确定的,并在整个进程运行期间不再改变。 动态优先数是指进程的优先数在创建进程时可以给定一个初始值,并且可以按一定原则修改优先数。 例如:在进程获得一次CPU后就将其优先数减少1。或者,进程等待的时间超过某一时限时增加其优先数的值,等等。 2、编写并调试一个模拟的进程调度程序,采用“轮转法”调度算法对五个进程进行调度。轮转法可以是简单轮转法、可变时间片轮转法,或多队列轮转法。 简单轮转法的基本思想是:所有就绪进程按FCFS排成一个队列,总是把处理机分配给队首的进程,各进程占用CPU的时间片相同。如果运行进程用完它的时间片后还为完成,就把它送回到就绪队列的末尾,把处理机重新分配给队首的进程。直至所有的进程运行完毕。 3、多级反馈队列调度算法的基本思想是:

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平方米。

数据结构实验报告图实验

图实验一,邻接矩阵的实现 1.实验目的 (1)掌握图的逻辑结构 (2)掌握图的邻接矩阵的存储结构 (3)验证图的邻接矩阵存储及其遍历操作的实现 2.实验内容 (1)建立无向图的邻接矩阵存储 (2)进行深度优先遍历 (3)进行广度优先遍历 3.设计与编码 MGraph.h #ifndef MGraph_H #define MGraph_H const int MaxSize = 10;

template class MGraph { public: MGraph(DataType a[], int n, int e); ~MGraph(){ } void DFSTraverse(int v); void BFSTraverse(int v); private: DataType vertex[MaxSize]; int arc[MaxSize][MaxSize]; int vertexNum, arcNum; }; #endif MGraph.cpp

#include using namespace std; #include "MGraph.h" extern int visited[MaxSize]; template MGraph::MGraph(DataType a[], int n, int e) { int i, j, k; vertexNum = n, arcNum = e; for(i = 0; i < vertexNum; i++) vertex[i] = a[i]; for(i = 0;i < vertexNum; i++) for(j = 0; j < vertexNum; j++) arc[i][j] = 0; for(k = 0; k < arcNum; k++) {

广工_操作系统_实验报告

操作系统实验报告 学院_____计算机学院_______ 专业______软件工程________ 班级______ ________ 学号_____ _______ 姓名_______ _________ 指导教师 (2010年10 月)

学号:姓名:协作者:________ 实验__一__题目__ 进程调度___第周星期___ 一、实验目的 用高级语言编写和调试一个进程调度程序,以加深对进程的概念及进程调度算法的理解。 二、实验内容和要求 编写并调试一个模拟的进程调度程序,采用“轮转法”调度算法对五个进程进行调度。 ·每个进程有一个进程控制块(PCB)表示。进程控制块可以包含如下信息:进程名、优先数、到达时间、需要运行的时间、已用CPU时间、进程状态等。 ·进程的优先数以及需要的运行时间事先由人为指定(也可以随机数产生)。 ·如果运行一个时间片后进程的已占用CPU时间已达到所需要的运行时间,则撤销该进程,如果还未达到,则把它送回队尾。 三、实验主要仪器设备和材料 实验环境 硬件环境:IBM-PC 或兼容机 软件环境:C语言编程环境 四、实验原理及设计方案 1、实验原理 将程序顺序的输入进程队列后,开始执行程序,当运行了一个时间片后,如果进程所占的CPU时间达到所需的运行时间时,该进程完成,并撤销该进程,否则则把进程送回队尾。 2、设计方案 用一个进程控制块(PCB)表示进程。输入进程名称,优先级,运行时间后,通过模拟系统对进程采用“轮转法”调度,得到各个时间片进程的运行情况。 3、相关数据结构的说明 struct pcb // 定义进程控制块 PCB {

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

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

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

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

一、填空(每题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) 你的答案:正确

数据结构实验报告2

数据结构实验报告 二.程序设计相关信息 (1)实验题目:编写一个程序algo2-3.cpp,实现双链表的各种基本运算,并在此基础上设计一个主程序完成如下功能: 1.初始化双链表h; 2.依次采用尾插法插入a,b,c,d,e元素; 3.输出双链表h; 4.输出双链表h长度; 5.输出双链表h是否为空; 6.判断双链表h的第3个元素; 7.输出元素‘a’的位置; 8.在第4个元素位置上插入‘f’元素; 9.输出双链表h; 10.删除L的第3个元素; 11.输出双链表h; 12.释放双链表h。 (2)实验目的:熟悉双链表的基本操作并掌握尾插法建表。 (3)算法描述或流程图

(4)源代码 #include #include

typedef struct DNode { char data; struct DNode *next; struct DNode *prior; }DNode,DLinkList; void initlist(DLinkList *&h) { h=(DLinkList*)malloc(sizeof(DLinkList)) ; h->next=NULL; h->prior=NULL; } void destroylist(DLinkList *&h) { DLinkList *p=h,*q=p->next; while(q!=NULL) {free(p); p=q; q=p->next; } free(p); } int getelem(DLinkList *h,int i,char &e) {int j=0; DLinkList *p=h; while(jnext; } if(p==NULL) return 0; else { e=p->data; return 1; } } int listempty(DLinkList *h) { return(h->next==NULL&&h->prior==NULL); } int listlength(DLinkList *h) { DLinkList *p=h;int n=0; while(p->next!=NULL) {n++; p=p->next; } return (n);

数据结构-树的实现实验报告

数据结构设计性实验报告 课程名称_____ ____ 题目名称 学生学院 专业班级 学号 学生姓名 指导教师 2010 年 7 月 6 日

抽象数据类型:树的实现 一.需求分析 树形结构是一类重要的非线性数据结构,其中以树和二叉树最为常用,直观来看,树是以分支关系定义的内部结构。树的结构在客观世界广泛存在,如人类社会的族谱和各种社会组织机构都可以用树来形象表示。树在计算机领域中也得广泛应用,如在编译程序中,可用树来表示源程序的语法结构,又如在数据库系统中,树形结构也是信息的重要组织形式之一。 二.实验目的 对某个具体的抽象数据类型,运用课程所学的知识和方法,设计合理的数据结构,并在此基础上实现该抽象数据类型的全部基本操作。通过本设计性实验,检验所学知识和能力,发现学习中存在的问题。进而达到熟练地运用本课程中的基础知识及技术的目的。 三.实验环境 1、硬件:PC机 2、软件:Microsoft V isual C++ 6.0 四.设计说明 本程序采用树的二叉链表(孩子指针-兄弟指针-双亲指针)存储表示,以下是树的结构定义和基本操作: ADT Tree{ 数据对象D:D是具有相同特性的数据元素的集合。 数据关系R: 若D为空集,则称为空树; 若D仅含有一个数据元素,则R为空集,否则R={H},H是如下二元关系: (1) 在D中存在唯一的称为根的数据元素root,它在关系H下无前驱; (2) 若D-{root}≠NULL,则存在D-{root}的一个划分D1,D2,D3, …,Dm(m>0),对于任意j ≠k(1≤j,k≤m)有Dj∩Dk=NULL,且对任意的i(1≤i≤m),唯一存在数据元素xi∈Di有∈H; (3) 对应于D-{root}的划分,H-{,…,}有唯一的一个划分H1,H2,…,Hm(m>0),对任意j≠k(1≤j,k≤m)有Hj∩Hk=NULL,且对任意i(1≤i≤m),Hi是Di 上的二元关系,(Di,{Hi})是一棵符合本定义的树,称为根root的子树。 基本操作P: InitTree(&T); 操作结果:构造空树T。 DestroyTree(&T); 初始条件:树T存在。 操作结果:销毁树T。 CreateTree(&T,definition); 初始条件:definition给出树T的定义。 操作结果:按definition构造树T。 ClearTree(&T);

数据结构实验答案(1)

重庆文理学院软件工程学院实验报告册专业:_____软件工程__ _ 班级:_____软件工程2班__ _ 学号:_____201258014054 ___ 姓名:_____周贵宇___________ 课程名称:___ 数据结构 _ 指导教师:_____胡章平__________ 2013年 06 月 25 日

步骤#define ERROR 0 #define TRUE 1 #define FALSE 0 #define ElemType int #define MAXSIZE 100 /*此处的宏定义常量表示线性表可能达到的最大长度*/ typedef struct { ElemType elem[MAXSIZE]; /*线性表占用的数组空间*/ int last; /*记录线性表中最后一个元素在数组elem[ ]中的位置(下标值),空表置为-1*/ }SeqList; #include "common.h" #include "seqlist.h" void px(SeqList *A,int j); void main() { SeqList *l; int p,q,r; int i; l=(SeqList*)malloc(sizeof(SeqList)); printf("请输入线性表的长度:"); scanf("%d",&r); l->last = r-1; printf("请输入线性表的各元素值:\n");

{ scanf("%d",&l->elem[i]); } px(l,i); printf("请输入要插入的值:\n"); scanf("%d",&l->elem[i]); i++; px(l,i); l->last++; for(i=0; i<=l->last; i++) { printf("%d ",l->elem[i]); } printf("\n"); } void px(SeqList *A,int j) { int i,temp,k; for(i=0;ielem[i]elem[k]) {temp=A->elem[i]; A->elem[i]=A->elem[k]; A->elem[k]=temp; }}

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)

数据结构实验一 实验报告

班级:姓名:学号: 实验一线性表的基本操作 一、实验目的 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;

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

自动化学院自动化专业班学号 姓名实验时间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"); //**********************************

相关主题
文本预览
相关文档 最新文档