当前位置:文档之家› 《数据结构课程设计》实验指导书(2011)

《数据结构课程设计》实验指导书(2011)

《数据结构课程设计》实验指导书(2011)
《数据结构课程设计》实验指导书(2011)

数据结构课程设计

1.一元稀疏多项式计算器 [问题描述] 设计一个一元稀疏多项式简单计算器。 [基本要求] 输入并建立多项式; 输出多项式,输出形式为整数序列:n, c1, e1, c2, e2,……, cn, en ,其中n是多项式的项数,ci, ei分别是第i项的系数和指数,序列按指数降序排序; 多项式a和b相加,建立多项式a+b; 多项式a和b相减,建立多项式a-b; [测试数据] (2x+5x8-3.1x11)+(7-5x8+11x9)=(-3.1x11+11x9+2x+7) (6x-3-x+4.4x2-1.2x9)-(-6x-3+5.4x2-x2+7.8x15)=(-7.8x15-1.2x9-x+12x-3) (1+x+x2+x3+x4+x5)+(-x3-x4)=(x5+x2+x+1) (x+x3)+(-x-x3)=0 (x+x2+x3)+0=(x3+x2+x) [实现提示] 用带头结点的单链表存储多项式,多项式的项数存放在头结点中。 2.背包问题的求解 [问题描述] 假设有一个能装入总体积为T的背包和n件体积分别为w1, w2, …,wn的物品,能否从n件物品中挑选若干件恰好装满背包,即使w1+w2+…+wn=T,要求找出所有满足上述条件的解。例如:当T=10,各件物品的体积为{1,8,4,3,5,2}时,可找到下列4组解:(1,4,3,2)、(1,4,5)、(8,2)、(3,5,2) [实现提示] 可利用回溯法的设计思想来解决背包问题。首先,将物品排成一列,然后顺序选取物品转入背包,假设已选取了前i件物品之后背包还没有装满,则继续选取第i+1件物品,若该件物品“太大”不能装入,则弃之而继续选取下一件,直至背包装满为止。但如果在剩余的物品中找不到合适的物品以填满背包,则说明“刚刚”装入背包的那件物品“不合适”,应将它取出“弃之一边”,继续再从“它之后”的物品中选取,如此重复,直至求得满足条件的解,或者无解。 由于回溯求解的规则是“后进先出”因此自然要用到栈。 3.完全二叉树判断 用一个二叉链表存储的二叉树,判断其是否是完全二叉树。 4.最小生成树求解(1人) 任意创建一个图,利用克鲁斯卡尔算法,求出该图的最小生成树。 5.最小生成树求解(1人) 任意创建一个图,利用普里姆算法,求出该图的最小生成树。 6.树状显示二叉树 编写函数displaytree(二叉树的根指针,数据值宽度,屏幕的宽度)输出树的直观示意图。输出的二叉树是垂直打印的,同层的节点在同一行上。 [问题描述] 假设数据宽度datawidth=2,而屏幕宽度screenwidth为64=26,假设节点的输出位置用 (层号,须打印的空格数)来界定。 第0层:根在(0,32)处输出;

大地测量学实验指导书汇总

《大地测量学基础》实验指导书 XXX大学土木工程系测绘工程教研室 2010年7月

第一部分:实验与实习须知 控制测量学是测绘工程专业一门践性很强的专业主干课程,其实验与实习是教学中必不可少的重要环节。只有通过实验与实习,才能巩固课堂所学的基本理论,进而掌握仪器操作的基本技能和测量作业的基本方法,并为深入学习测绘专业理论和有关专业知识打下基础。在进行实验之前,必须明确实验的基本规定,了解仪器的借还手序及仪器的保护、保养等知识,做到爱护仪器,达到实习之目的,防患于未然。 实验与实习规定 1.在实验或实习之前,必须复习教材中的有关内容,认真仔细地预习本指导书,以明确目的、了解任务、熟悉实验步骤和过程、注意有关事项并准备好所需文具用品。 2.实验或实习分小组进行,组长负责组织协调工作,办理所用仪器工具和借领和归还手续。 3.实验或学习应在规定的时间进行,不得无故缺席或迟到早退;应在指定的场地进行,不得擅自改变地点或离开现场。 4.必须遵守“测量仪器工具的借领与使用规则”和“测量记录与计算规则”。 5.应该服从教师的指导,严格按照本指导书的要求认真、按时、独立地完成任务。每项实验或实习,都应取得合格的成果,提交书写工整规范的实验报告或实习记录,经指导教师审阅同意后,才可交还仪器工具,结束工作。 6.在实验或实习过程中,还应遵守纪律,爱护现场的花草、树木和农作物,爱护周围的各种公共设施,任意砍折、踩踏或损环者应予赔偿。 测量仪器工具的借领与使用规则 对测量仪器工具的正确使用、精心爱护和科学保养,是测量人员必须具备的素质和应该掌握的技能,也是保证测量成果质量、提高测量工作效率和延长仪器工具使用寿命的必要条件。在仪器工具的借领与使用中,必须严格遵守下列规定。 一、仪器工具的借领 1.在指定的地点凭学生证办理借领手续,以小组为单位领取仪器工具。 2.借领时应该当场清点检查。实物与清单是否相符,仪器工具及其附件是否齐全,背带及提手是否牢固,脚架是否完好等。如有缺损,可以补领或更换。 3.离开借领地点之前,必须锁好仪器箱并捆扎好各种工具;搬运仪器工具时,必须轻取轻放,避免剧烈震动。 4.借出仪器工具之后,不得与其他小组擅自调换或转借。

数据结构课程设计报告

山东建筑大学 课程设计成果报告 题目: 1.数组实现两个矩阵的相乘运算 2.成绩分析问题 课程:数据结构A课程设计 院(部):管理工程学院 专业:信息管理与信息系统 班级:信管*** 学生姓名:*** 学号:******** 指导教师:******* 完成日期:2016年12月29日

目录 目录 (2) 一、课程设计概述 (3) 二、课程设计题目一 (3) 用数组实现两个矩阵的相乘运算 (3) 2.1[问题描述] (3) 2.2[要求及提示]: (3) 2.3[详细设计] (4) 2.4[调试分析] (5) 2.5[运行结果及分析] (5) 三、课程设计题目二 (6) 成绩分析问题 (6) 3.1[问题描述] (6) 3.2[概要设计] (6) 3.3[存储结构] (7) 3.4[流程图] (7) 3.5[详细设计] (8) 3.6[调试分析] (8) 3.7[运行结果及分析] (22) 四、参考文献: (25)

一、课程设计概述 本次数据结构课程设计共完成两个题:用数组实现两个矩阵相乘运算、成绩分析问题。使用语言:C 编译环境:vc6.0 二、课程设计题目一 用数组实现两个矩阵的相乘运算 2.1[问题描述] #include “stdio.h” int r[6][6]; void mult(int a[6][6] , int b[6][6]){ } main(){ int i,j; int num1[6][6],num2[6][6]; printf(“请输入第一个矩阵的值:”,); for(i=1;i<=6;i++) for(j=1;j<=6;j++) scanf(“%d”,&num1[i][j]); printf(“请输入第二个矩阵的值:”,); for(i=1;i<=6;i++) for(j=1;j<=6;j++) scanf(“%d”,&num2[i][j]); mult(num1,num2); printf(“\n两个矩阵相乘后的结果为:”); for(i=1;i<=6;i++) {for(j=1;j<=6;j++) printf(“%4d”,r[i][j]); printf(“\n”); } } 2.2[要求及提示]: 1、要求完善函数mult( ),

南京工业大学VB实验指导知识点与课前练习答案

第五章 实验5-1 知识点 1.数组与普通变量得区别在于数组是一组具有相同类型的有序变量的集合;而变量之间相互独立,没有内在的联系,并与其所在的位置无关。 2.VB中可以通过Dim,private,public,static这几个语句定义数组,他们之间得区别在于所定义的数组作用域不同。Static语句用于过程中,定义静态数组;private语句用于模块的通用声明处,定义模块级数组;public语句用于标准模块的声明处,定义全局数组;Dim 语句既可以用于过程中,定义局部数组,也可以用于模块的通用声明处,定义模块级数组。3.语句option base 1 Dim b(3) as integer 定义了3个数组元素,分别是b(1),b(2)和b(3),这两个b(3)的区别在于前者是定义数组使用的数组说明符,后者是数组元素b(3). 4. VB中的二维数组在存放的时候是按列_存储的。 5.常见的数组函数及语句有哪些?他们的功能各是什么? Lbound函数,用于返回数组某维的维下界的值; Ubound函数,用于返回数组某维的维下界的值; Erase语句,功能有二,一是重新初始化固定大小数组的元素,二是释放动态数组的存储空间 Option base n 语句,用于说明数组的维下界从n开始计数 For-each-next语句,用于数组或对象集合中的每个元素重复执行一组语句。 6.For-each-next语句与For-next语句的区别在于前者专门用于数组或对象集合中的每个元素,而后者多用于普通变量。 课前练习 1.①13 ②6 ③15 ④105 ⑤9 ⑥44 2.option base语句和redim语句。 3.33 4. 12 5 实验5-2 知识点 1.数组元素 2.数组元素的本质是变量,但是与之不同的是数组元素是有序的,通过改变下标就可以访问不同的数组元素。 3.数组元素赋值的方法有: ①用赋值语句给数组元素赋值②通过循环逐一给数组元素赋值③用inputbox函数给数组元素赋值④用array函数给数组赋值 课前练习 1. D 2.LSP HXF BGJ 3. 1 5 9

数据结构课程设计报告模板

课程设计说明书 课程名称:数据结构 专业:班级: 姓名:学号: 指导教师:成绩: 完成日期:年月日

任务书 题目:黑白棋系统 设计内容及要求: 1.课程设计任务内容 通过玩家与电脑双方的交替下棋,在一个8行8列的方格中,进行棋子的相互交替翻转。反复循环下棋,最后让双方的棋子填满整个方格。再根据循环遍历方格程序,判断玩家与电脑双方的棋子数。进行大小判断,最红给出胜负的一方。并根据y/n选项,判断是否要进行下一局的游戏。 2.课程设计要求 实现黑白两色棋子的对峙 开发环境:vc++6.0 实现目标: (1)熟悉的运用c语言程序编写代码。 (2)能够理清整个程序的运行过程并绘画流程图 (3)了解如何定义局部变量和整体变量; (4)学会上机调试程序,发现问题,并解决 (5)学习使用C++程序来了解游戏原理。 (6)学习用文档书写程序说明

摘要 本文的研究工作在于利用计算机模拟人脑进行下黑白棋,计算机下棋是人工智能领域中的一个研究热点,多年以来,随着计算机技术和人工智能技术的不断发展,计算机下棋的水平得到了长足的进步 该程序的最终胜负是由棋盘上岗双方的棋子的个数来判断的,多的一方为胜,少的一方为负。所以该程序主要运用的战术有削弱对手行动战术、四角优先战术、在游戏开局和中局时,程序采用削弱对手行动力战术,即尽量减少对手能够落子的位置;在游戏终局时则采用最大贪吃战术,即尽可能多的吃掉对手的棋子;而四角优先战术则是贯穿游戏的始终,棋盘的四角围稳定角,不会被对手吃掉,所以这里是兵家的必争之地,在阻止对手进角的同时,自己却又要努力的进角。 关键词:黑白棋;编程;设计

电工学实验指导书汇总Word版

电工学实验指导书 武汉纺织大学 实验一直流电路实验 (1)

实验二正弦交流电路的串联谐振 (4) 实验三功率因数的提高 (6) 实验四三相电路实验 (9) 实验五微分积分电路实验 (12) 实验六三相异步电动机单向旋转控制 (14) 实验七三相异步电动机正、反转控制 (16) 实验八单相桥式整流和稳压电路 (18) 实验九单管交流放大电路 (19) 实验十一集成运算放大器的应用 (24) 实验十二组合逻辑电路 (26) 实验十三移位寄存器 (29) 实验十四十进制计数器 (33)

实验一直流电路实验 一、实验目的: 1.验证基尔霍夫定律 2.研究线性电路的叠加原理 3.等效电源参数的测定 二、实验原理: 1.基尔霍夫定律是电路理论中最重要的定律之一,它阐明了电路整体结构必须遵守的定律,基尔霍夫定律有两条即电流定律和电压定律。 电流定律:在任一时刻,流入电路中任一节点的电流之和等于流出该节点的电流之和,换句话来说就是在任一时刻,流入到电路中任一节点的电流的代数和为零,即∑I=0。 电压定律:在任一时刻,沿任一闭合回路的循行方向,回路中各段电压降的代数和等于零,即 ∑U=0。 2.叠加原理:n个电源在某线性电路共同作用时,它们在电路中任一支路中产生的电流或在任意两点间所产生的电压降等于这些电源单独作用时,在该部分所产生的电流或电压降的代数和。三、仪器设备及选用组件箱: 1.直流稳压电源 GDS----02 GDS----03 2.常规负载 GDS----06 3.直流电压表和直流电流表 GDS----10 四、实验步骤: 1.验证基尔霍夫定律 按图1—1接线,(U S1、U S2分别由GDS---02,GDS---03提供)调节U SI=3V,U S2=10V,然后分别用电流表测取表1—1中各待测参数,并填入表格中。 2.研究线性电路的叠加原理 ⑴将U S2从上述电路中退出,并用导线将c、d间短接,接入U S1,仍保持3V,测得各项电流,电压,把所测数据填入表1—2中;

数据结构课程设计报告模板

校园导游系统设计 一、设计要求 1.问题描述 设计一个校园导游程序,为来访的客人提供信息查询服务。 2.需求分析 (1)设计学校的校园平面图。选取若干个有代表性的景点抽象成一个无向带权图(无向网),以图中顶点表示校内各景点,边上的权值表示两景点之间的距离。 (2)存放景点代号、名称、简介等信息供用户查询。 (3)为来访客人提供图中任意景点相关信息的查询。 (4)为来访客人提供图中任意景点之间的问路查询。 (5)可以为校园平面图增加或删除景点或边,修改边上的权值等。 二、概要设计 为了实现以上功能,可以从3个方面着手设计。 1.主界面设计 为了实现校园导游系统各功能的管理,首先设计一个含有多个菜单项的主控菜单子程序以链接系统的各项子功能,方便用户使用本系统。本系统主控菜单运行界面如图7-10所示。 2.存储结构设计 本系统采用图结构类型(mgraph)存储抽象校园图的信息。其中:各景点间的邻接关系用图的邻接矩阵类型(adjmatrix)存储;景点(顶点)信息用结构数组(vexs)存储,其中每个数组元素是一个结构变量,包含景点编号、景点名称及景点介绍三个分量;图的顶点个数及边的个数由分量vexnum、arcnum表示,它们是整型数据。 此外,本系统还设置了三个全局变量:visited[ ] 数组用于存储顶点是否被访问标志;d[ ]数组用于存放边上的权值或存储查找路径顶点的编号;campus是一个图结构的全局变量。 3.系统功能设计 本系统除了要完成图的初始化功能外还设置了8个子功能菜单。图的初始化由函数initgraph( )实现。依据读入的图的顶点个数和边的个数,分别初始化图结构中图的顶点向量数组和图的邻接矩阵。8个子功能的设计描述如下。 (1)学校景点介绍 学校景点介绍由函数browsecompus( )实现。当用户选择该功能,系统即能输出学校全部景点的信息:包括景点编号、景点名称及景点简介。 (2)查看浏览路线 查看浏览路线由函数shortestpath_dij( )实现。该功能采用迪杰斯特拉(Dijkstra)算法实现。当用户选择该功能,系统能根据用户输入的起始景点编号,求出从该景点到其它景点的最短路径线路及距离。 (3)查看两景点间最短路径

测试技术实验指导书及实验报告2006级用汇总

矿压测试技术实验指导书 学号: 班级: 姓名: 安徽理工大学 能源与安全学院采矿工程实验室

实验一常用矿山压力仪器原理及使用方法 第一部分观测岩层移动的部分仪器 ☆深基点钻孔多点位移计 一、结构简介 深基点钻孔多点位移计是监测巷道在掘进和受采动影响的整个服务期间,围岩内部变形随时间变化情况的一种仪器。 深基点钻孔多点位移包括孔内固定装置、孔中连接钢丝绳、孔口测读装置组成。每套位移计内有5~6个测点。其结构及其安装如图1所示。 二、安装方法 1.在巷道两帮及顶板各钻出φ32的钻孔。 2.将带有连接钢丝绳的孔内固定装置,由远及近分别用安装圆管将其推至所要求的深度。(每个钻孔布置5~6个测点,分别为;6m、5m、4m、3m、2m、lm或12m、10m、8m、6m、4m、2m)。 3.将孔口测读装置,用水泥药圈或木条固定在孔口。 4。拉紧每个测点的钢丝绳,将孔口测读装置上的测尺推至l00mm左右的位置后,由螺丝将钢丝绳与测尺固定在一起。 三、测试方法 安装后先读出每个测点的初读数,以后每次读得的数值与初读数之差,即为测点的位移值。当读数将到零刻度时,松开螺丝,使测尺再回到l00mm左右的位置,重新读出初读数。 ☆顶板离层指示仪 一、结构简介: 顶板离层指示仪是监测顶板锚杆范围内及锚固范围外离层值大小的一种监测仪器,在顶板钻孔中布置两个测点,一个在围岩深部稳定处,一个在锚杆端部围岩中。离层值就是围岩中两测点之间以及锚杆端部围岩与巷道顶板表面间的相对位移值。顶板离层指示仪由孔内固定装置、测量钢丝绳及孔口显示装置组成如图1所示。

二、安装方法: 1.在巷道顶板钻出φ32的钻孔,孔深由要求而定。 2.将带有长钢丝绳的孔内固定装置用安装杆推到所要求的位置;抽出安装杆后再将带有短钢丝绳的孔内固定装置推到所要求的位置。 3.将孔口显示装置用木条固定在孔口(在显示装置与钻孔间要留有钢丝绳运动的间隙)。 4.将钢丝绳拉紧后,用螺丝将其分别与孔口显示装置中的圆管相连接,且使其显示读数超过零刻度线。 三、测读方法: 孔口测读装置上所显示的颜色,反映出顶板离层的范围及所处状态,显示数值表示顶板的离层量。☆DY—82型顶板动态仪 一、用途 DY-82型顶板动态仪是一种机械式高灵敏位移计。用于监测顶底板移近量、移近速度,进行采场“初次来压”和“周期来压”的预报,探测超前支撑压力高 峰位置,监测顶板活动及其它相对位移的测量。 二、技术特征 (1)灵敏度(mm) 0.01 (2)精度(%) 粗读±1,微读±2.5 (3)量程(mm) 0~200 (4)使用高度(mm) 1000~3000 三、原理、结构 其结构和安装见图。仪器的核心部件是齿条6、指针8 以及与指针相连的齿轮、微读数刻线盘9、齿条下端带有读 数横刻线的游标和粗读数刻度管11。 当动态仪安装在顶底板之间时,依靠压力弹簧7产生的 弹力而站立。安好后记下读数(初读数)并由手表读出时间。 粗读数由游标10的横刻线在刻度管11上的位置读出,每小 格2毫米,每大格(标有“1”、“22'’等)为10毫米,微读数 由指针8在刻线盘9的位置读出,每小格为0.01毫米(共200 小格,对应2毫米)。粗读数加微读数即为此时刻的读数。当 顶底板移近时,通过压杆3压缩压力弹簧7,推动齿条6下 移,带动齿轮,齿轮带动指针8顺时针方向旋转,顶底板每 移近0.01毫米,指针转过1小格;同时齿条下端游标随齿条 下移,读数增大。后次读数减去前次读数,即为这段时间内的顶底板移近量。除以经过的时间,即得

数据结构课程设计报告范例

Guangxi University of Science and Technology 课程设计报告 课程名称:算法与编程综合实习 课题名称: 姓名: 学号: 院系:计算机学院 专业班级:通信121 指导教师: 完成日期:2012年12月15日

目录 第1部分课程设计报告 (3) 第1章课程设计目的 (3) 第2章课程设计内容和要求 (4) 2.1 问题描述 (4) 2.2 设计要求 (4) 第3章课程设计总体方案及分析 (4) 3.1 问题分析 (4) 3.2 概要设计 (7) 3.3 详细设计 (7) 3.4 调试分析 (10) 3.5 测试结果 (10) 3.6 参考文献 (12) 第2部分课程设计总结 (13) 附录(源代码) (14)

第1部分课程设计报告 第1章课程设计目的 仅仅认识到队列是一种特殊的线性表是远远不够的,本次实习的目的在于使学生深入了解队列的特征,以便在实际问题背景下灵活运用它,同时还将巩固这种数据结构的构造方………………………………………………………………………………………………………………………………………………………………………………………..(省略)

第2章课程设计内容和要求 2.1问题描述: 迷宫问题是取自心理学的一个古典实验。在该实验中,把一只老鼠从一个无顶大盒子的门放入,在盒子中设置了许多墙,对行进方向形成了多处阻挡。盒子仅有一个出口,在出口处放置一块奶酪,吸引老鼠在迷宫中寻找道路以到达出口。对同一只老鼠重复进行上述实验,一直到老鼠从入口走到出口,而不走错一步。老鼠经过多次试验最终学会走通迷宫的路线。设计一个计算机程序对任意设定的矩形迷宫如下图A所示,求出一条从入口到出口的通路,或得出没有通路的结论。 图A 2.2设计要求: 要求设计程序输出如下: (1) 建立一个大小为m×n的任意迷宫(迷宫数据可由用户输入或由程序自动生成),并在屏 幕上显示出来; (2)找出一条通路的二元组(i,j)数据序列,(i,j)表示通路上某一点的坐标。 (3)用一种标志(如数字8)在迷宫中标出该条通路; (4)在屏幕上输出迷宫和通路; (5)上述功能可用菜单选择。

初中物理 课外实验探究专题复习知识点考点归纳和练习

课外实验探究专题复习(2课时) 一、知识考点 1. 选用不同于课内的方法和实验器材进行实验,它所要得出的实验结论 (规律)来源于课内的实验: ⑴探究摩擦力的大小与什么因素有关; ⑵探究压力的作用效果跟什么因素有关; ⑶研究物体的动能与质量和速度的关系; ⑷滑轮组的机械效率与哪些因素有关; ⑸研究液体的压强与液体的密度和深度的关系; ⑹研究弦乐器的音调与弦的松紧、长短和粗细的关系; ⑺研究电流产生的热量与电流、电阻和通电时间的关系; ⑻研究感应电流的方向跟什么因素有关; ⑼研究电磁铁的磁性与线圈的匝数和电流大小的关系; ⑽研究影响蒸发快慢的因素; ⑾通过观察木桩被落下的金属块撞击后陷入沙坑中的深浅来比较重力势能的大小; ⑿通过墨水的扩散现象来认识分子的无规则运动; ⒀判断通过电磁铁吸引大头针的多少来比较电磁铁磁性的强弱; ⒁将液体的压强转换成我们能看到的液柱高度差的变化等等。 2.要得出的实验结论不在课内,但探究方法一定来源于课内的实验: ⑴关于“下雪不冷,化雪冷”原因的实验探究。 ⑵探究自由落体运动快慢与哪些因素有关。 ⑶探究通过西瓜的电流与西瓜汁中糖浓度的关系。 ⑷探究相互作用的两个力之间的关系。 ⑸怎样才能把铅球掷得更远。 ⑹抹布的吸水能力可能跟布料的种类有关。 ⑺弹力与钢锯片长度的关系。 ⑺物体的影长跟什么因素有关的实验探究 ⑻测量西瓜的电阻等等。 二、解答方法 1.记牢课内物理规律或实验结论:摩擦力的大小与压力和接触面的粗糙程度有关,动能与质量 和速度有关,影响蒸发快慢的因素有液体温度高低、表面积的大小、空气流动快慢,温度越高扩散越快,电磁铁磁性的强弱与电流大小匝数的多少铁芯的有无等等。 2.课外实验探究是在课内学习的基础上进行实验探究的,选用不同于课内的方法和实验器材进 行实验,它所要得出的实验结论(规律)来源于课内,或者要得出的实验结论不在课内,但探究方法一定来源于课内,这类题型考查学生实验设计能力,数据读取、分析能力、归纳能力,运用物理概念、规律与原理解决简单问题的能力。 3.知道探究过程:提出问题→猜想假设→设计实验→进行实验→分析论证→得出结论。 4.了解物理研究方法:控制变量法、转换法、归纳法等。

数据结构课程设计报告

《数据结构课程设计》报告 题目:课程设计题目2教学计划编制 班级:700 学号:09070026 姓名:尹煜 完成日期:2011年11月7日

一.需求分析 本课设的任务是根据课程之间的先后的顺序,利用拓扑排序算法,设计出教学计划,在七个学期中合理安排所需修的所有课程。 (一)输入形式:文件 文件中存储课程信息,包括课程名称、课程属性、课程学分以及课程之间先修关系。 格式:第一行给出课程数量。大于等于0的整形,无上限。 之后每行按如下格式“高等数学公共基础必修6.0”将每门课程的具体信息存入文件。 课程基本信息存储完毕后,接着给出各门课程之间的关系,把每门课程看成顶点,则关系即为边。 先给出边的数量。大于等于0的整形。 默认课程编号从0开始依次增加。之后每行按如下格式“1 3”存储。此例即为编号为1的课程与编号为3的课程之间有一条边,而1为3的前驱,即修完1课程才能修3课程。 例: (二)输出形式:1.以图形方式显示有向无环图

2.以文本文件形式存储课程安排 (三)课设的功能 1.根据文本文件中存储的课程信息(课程名称、课程属性、课程学分、课程之间关系) 以图形方式输出课程的有向无环图。 拓展:其显示的有向无环图可进行拖拽、拉伸、修改课程名称等操作。 2.对课程进行拓扑排序。 3.根据拓扑排序结果以及课程的学分安排七个学期的课程。 4.安排好的教学计划可以按图形方式显示也可存储在文本文件里供用户查看。 5.点击信息菜单项可显示本人的学好及姓名“09070026 尹煜” (四)测试数据(见六测设结果)

二.概要设计 数据类型的定义: 1.Class Graph即图类采用邻接矩阵的存储结构。类中定义两个二维数组int[][] matrix 和Object[][] adjMat。第一个用来标记两个顶点之间是否有边,为画图服务。第二个 是为了实现核心算法拓扑排序。 2.ArrayList list用来存储课程信息。DrawInfo类是一个辅助画图的类,其中 包括成员变量num、name、shuxing、xuefen分别代表课程的编号、名称、属性、 学分。ArrayList是一个DrawInfo类型的数组,主要用来在ReadFile、DrawG、DrawC、SaveFile、Window这些类之间辅助参数传递,传递课程信息。 3.Class DrawInfo, 包括int num;String name;String shuxing;float xuefen;四个成员变量。 4.Class Edge包括int from;int to;double weight;三个成员变量。 5.Class Vertex包括int value一个成员变量。 主要程序的流程图: //ReadFile.java

操作系统实验指导书汇总

操作系统实验指导书 东北大学软件学院 2008年10月

实验要求 (1)预习实验指导书有关部分,认真做好实验的准备工作。 (2)实验中及时分析记录。 (3)按指导书要求书写实验报告,提交打印版(A4)。 实验的验收将分为两个部分。第一部分是上机操作,包括检查程序运行和即时提问。第二部分是提交的实验报告。

实验一进程调度(4学时) 一、实验目的 在采用多道程序设计的系统中,往往有若干个进程同时处于就绪状态。当就绪进程个数大于处理机数时,就必须依照某种策略来决定哪些进程优先占用处理机。本实验模拟在单处理机情况下的处理机调度,帮助学生加深了解处理机调度的工作。 二、实验类型 设计型。 三、预习内容 预习课本处理机调度有关内容,包括进程占用处理机的策略方法。 四、实验内容与提示 本实验中共有两个实验题。 第一题:编写并调试一个模拟的进程调度程序,采用“最高优先数优先”调度算法对五个进程进行调度。 <一>最高优先级优先调度算法 1)优先级简介 动态优先数是指在进程创建时先确定一个初始优先数,以后在进程运行中随着进程特性的改变不断修改优先数,这样,由于开始优先数很低而得不到CPU 的进程,就能因为等待时间的增长而优先数变为最高而得到CPU运行。 例如:在进程获得一次CPU后就将其优先数减少1。或者,进程等待的时间超过某一时限时增加其优先数的值,等等。 2)详细设计 优先权调度算法: 1、设定系统中有五个进程,每一个进程用一个进程控制块( PCB)表示,

进程队列采用链表数据结构。 2、进程控制块包含如下信息:进程名、优先数、需要运行时间、已用 CPU时间、进程状态等等。 3、在每次运行设计的处理调度程序之前,由终端输入五个进程的“优 先数”和“要求运行时间”。 4、进程的优先数及需要的运行时间人为地指定。进程的运行时间以时 间片为单位进行计算。 5、采用优先权调度算法,将五个进程按给定的优先数从大到小连成就 绪队列。用头指针指出队列首进程,队列采用链表结构。 6、处理机调度总是选队列首进程运行。采用动态优先数办法,进程每 运行一次优先数减“1”,同时将已运行时间加“1”。 7、进程运行一次后,若要求运行时间不等于已运行时间,则再将它加 入就绪队列;否则将其状态置为“结束”,且退出就绪队列。 8、“就绪”状态的进程队列不为空,则重复上面6,7步骤,直到所 有进程都成为“结束”状态。 9、在设计的程序中有输入语句,输入5个进程的“优先数”和“要求 运行时间”,也有显示或打印语句,能显示或打印每次被选中进程 的进程名、运行一次后队列的变化,以及结束进程的进程名。10、最后,为五个进程任意确定一组“优先数”和“要求运行时间”,运行并调试所设计的程序,显示或打印出逐次被选中进程的进程名及其进程控制块的动态变化过程。

最新数据结构课程设计题目

数据结构课程设计 一、考核方法和内容 根据课程设计过程中学生的学生态度、题目完成情况、课程设计报告书的质量和回答问题的情况等按照10%、40%、30%、20%加权综合打分。成绩评定实行优秀、良好、中等、及格和不及格五个等级。评分标准: 优秀:答辩所有问题都能答出+报告良好 或报告良好+实现“提高部分”的功能; 良好:答辩所有问题都能答出+报告一般; 或报告一般+实现“提高部分”的功能; 中等:答辩大部分问题能答出+报告良好; 及格:答辩大部分问题能答出+报告一般; 以下四种,都不及格: 1)答辩几乎答不出问题; 2)报告几乎都是代码; 3)雷同部分达到60%; 4)课设报告与数据结构和c/c++关联不大。 课设报告的装订顺序如下: 任务书(签名,把题目要求贴在相应位置,注意下划线)-----目录(注意目录的格式,页码)-----1、设计任务(题目要求)-----2、需求分析(准备选用什么数据逻辑结构?数据元素包含哪些属性?需要哪些函数?为什么要这样设计?最后列出抽象数据类型定义)-----3、系统设计(设计实现抽象数据类型,包含选择什么物理存储方式?数据元素的结构体或类定义,以及各函数的设计思路,算法,程序流程图等)----4、编码实现(重要函数的实现代码)-----5、调试分析(选择多组测试数据、运行截图、结果分析)-----6、课设总结(心得体会)-----7、谢辞-----8、参考文献; 课设报告打印要求: B5纸张打印,报告总页数控制在10—15页内,报告中不能全是代码,报告中代码总量控制在3页内。版式:无页眉,有页码,页码居中 字号:小四,单倍行距 字体:宋体+Times new Romar 截图:截图要配图的编号和图的题目,如:“图1 Insert函数流程图” 二、课程设计的题目 1.长整数的加法运算 2.通讯录管理系统的设计与实现——顺序表 3.广义表的应用 4.学生成绩管理系统的设计与实现 5.家谱管理系统的设计与实现 6.集合的并、交和差运算的程序 7.运动会分数统计 8.一元多项式计算器 9.文章编辑 10.哈夫曼树及其编码 11.校园导游咨询 12.通讯录管理系统的设计与实现——单链表 13.地图着色问题 14.内部排序算法比较 15.火车售票系统 16.图书管理系统 17.客户消费积分管理系统 18.产品进销存管理系统

数据结构课程设计

《数据结构》 课程设计报告 学号 姓名 班级 指导教师 安徽工业大学计算机学院 2010年6月

建立二叉树和线索二叉树 1.问题描述: 分别用以下方法建立二叉树并用图形显示出来: 1)用先序遍历的输入序列 2)用层次遍历的输入序列 3)用先序和中序遍历的结果 2.设计思路: 分三个方式去实现这个程序的功能,第一个实现先序遍历的输入数列建立二叉树;第二个是用层次遍历的方法输入序列;第三个是用先序和后序遍历的结果来建立二叉树;三种方法建立二叉树后都进行输出。关键是将这三个实现功能的函数写出来就行了;最后对所建立的二叉树进行中序线索化,并对此线索树进行中序遍历(不使用栈)。 3.数据结构设计: 该程序的主要目的就是建立二叉树和线索二叉树,所以采用树的存储方式更能完成这个程序; 结点的结构如下: typedef struct bnode { DataType data; int ltag,rtag; struct bnode *lchild, *rchild; } Bnode, *BTree; 4.功能函数设计: BTree CreateBinTree() 用先序遍历的方法讲二叉树建立; BTree CREATREE() 用队列实现层次二叉树的创建; void CreatBT(); 用先序和中序遍历的结果建立二叉树; void InThread(BTree t,BTree pre) 中序线索化; 5.编码实现: #include #include #define max 100 typedef struct bnode { char data; int ltag,rtag; struct bnode *lchild,*rchild; }Bnode,*BTree; BTree Q[max]; BTree CREATREE() { char ch; int front=1,rear=0;

C语言实验指导书(刘联海20131106)

《C语言程序设计》实验指导书

目录 实验1 C语言编程环境和运行C程序的方法 (1) 实验2 简单的顺序结构程序设计 (3) 实验3 数据类型和表达式 (5) 实验4 选择结构程序设计 (7) 实验5 循环结构程序设计(1) (10) 实验6 循环结构程序设计(2) (13) 实验7 数组 (16) 实验8 函数 (18)

实验1 C语言编程环境和运行C程序的方法 一、实验目的 1、熟悉Visual C6.0集成开发环境的使用方法; 2、熟悉C语言程序从编辑、编译、连接到最后运行得到结果的过程及各过程的作用; 3、了解C语言程序的结构特征与书写规则,能够编写简单的C程序; 4、初步理解程序调试的思想,能找出并改正C程序中的语法错误。 二、实验内容 1、熟悉上机环境 ⑴熟悉VC++6.0集成环境,重点是其中常用菜单、工具按钮的功能; ⑵在D盘建立一个自己的工作文件夹,文件夹以班名+学号后两位+姓名来命名(如:应用1105张三);分别创建、编辑并运行下列程序,初步熟悉C源程序的结构特点和运行方式。 #include main() { printf(“This is my first program!\n") ; } 2、编写一个程序实现分两行输出自己的姓名及联系电话。 3、程序改错调试 以下给定程序的功能是在屏幕上显示“Welcome to You!”,其中存在3处错误,请指出错误所在,并调试程序使其能运行得到正确结果。 #include mian() //1 { printf(Welcome to You!\n") //2 } 4、选做题 ⑴自学教材P47内容以及附录B中的字符与ASCII码对照表,编程输出以下图形: ? ? ⑵编程输出如下通讯录功能菜单界面

微生物的培养与应用知识讲解及练习

微生物的培养和应用 【学习目标】 1、掌握培养基的分类、组成、功能及配制。 2、掌握无菌技术的内容和无菌操作技术。 3、研究培养基对微生物的选择作用 4、掌握分离、纯化特定微生物的研究思路和方法,掌握从土壤中分理处能够分解尿素的细菌并进行技术的操作过程。 【要点梳理】 要点一、微生物的实验室培养 1、培养基: (1)培养基的配制原则 ①目的要明确(根据微生物的种类、培养目的等)。如培养基可由简单的无机物组成,生产用培养则可加入化学成分不明确的天然物质,而分类鉴定培养基必须加入已知化学成分的物质。 ②营养要协调。注意各种营养物质的浓度和比例。 ③pH要适宜。各种微生物适宜生长的pH范围不同。如细菌、放线菌和真菌生长的最适pH分别为:6.5~7.5、 7.5~8.5和5.0~6.0。 (2)培养基的种类和用途 (3)选择培养基和鉴别培养基应用实例

(4)培养基中的营养要素 要点诠释: ①微生物最常用的碳源是糖类,尤其是葡萄糖;最常用的氮源是铵盐、硝酸盐。 ②对异养微生物来说。含C、H、O、N的化合物既是碳源.又是氮源。 ③有些培养基不需要添加生长因子,生物自己能合成;而绝大多数微生物培养需要加入生长因子,原因是它们缺乏合成这些物质所需要的酶或合成能力有限。 2、无菌技术 (1)无菌技术的概念 在微生物培养中,获得纯净培养物的关键是防止外来杂菌的入侵,其主要技术是无菌操作。无菌技术是指通过一定物理、化学的手段,防止实验室培养物被外来微生物污染,保持微生物的纯培养的技术,其中包括在微生物的分离、转接、保存等过程中防止其他微生物污染的手段。无菌技术主要围绕如何避免杂菌污染展开的,主要包括以下几方面: ①对实验操作的空间,操作者的手和衣着,进行清洁和消毒。 ②将用于微生物培养的器皿、接种用具和培养基等进行灭菌。 ③为避免周围环境中微生物的污染,实验操作应在酒精灯火焰附近或接种箱内进行。 ④应避免已经灭菌处理的材料用具与周围其他物品相接触。 (2)灭菌是指使用强烈的理化因素杀死物体内外所有的微生物,包括芽孢和孢子。方法见下表: 注意:灭菌所依据的原理基本上都是使菌体内的蛋白质和核酸发生变性,从而达到杀菌的效果。 (3)消毒是指使用较为温和的物理或化学方法杀死物体表面或内部一部分对人体有害的微生物(不包括芽孢和孢子)。 ①煮沸消毒法:在100℃煮沸5 min~6 min可以杀死微生物细胞和一部分芽孢。 ②巴氏消毒法:在70℃~75℃煮30 min或在80℃煮15 min。可以杀死牛奶中的微生物,并且使牛奶的营

数据结构课程设计

一、高校社团管理 在高校中,为了丰富学生的业余生活,在学校的帮助下,会成立许多社团,少则几个,多则几十个。为了有效管理这些社团,要求编写程序实现以下功能:1.社团招收新成员; 2.修改社团相应信息 3.老成员离开社团 4.查询社团情况; 5.统计社团成员数; 二、简单文本编辑器 设计一个文本编辑器,允许将文件读到内存中,也就是存储在一个缓冲区中。这个缓冲区将作为一个类的内嵌对象实现。缓冲区中的每行文本是一个字符串,将每行存储在一个双向链表的结点中,要求设计在缓冲区中的行上执行操作和在单个行中的字符上执行字符串操作的编辑命令。 基本要求: 包含如下命令列。可用大写或小写字母输入。 R:读取文本文件到缓冲区中,缓冲区中以前的任何内容将丢失,当前行是文件的第一行; W:将缓冲区的内容写入文本文件,当前行或缓冲区均不改变。 I:插入单个新行,用户必须在恰当的提示符的响应中键入新行并提供其行号。 D:删除当前行并移到下一行; F:可以从第1行开始或从当前行开始,查找包含有用户请求的目标串的第一行; C:将用户请求的字符串修改成用户请求的替换文本,可选择是仅在当前行中有效的还是对全文有效的。 Q:退出编辑器,立即结束; H:显示解释所有命令的帮助消息,程序也接受?作为H的替代者。 N:当前行移到下一行,也就是移到缓冲区的下一行; P:当前行移到上一行,也就是移到缓冲区的上一行;

B:当前行移到开始处,也就是移到缓冲区的第一行; E:当前行移到结束处,也就是移到缓冲区的最后一行; G:当前行移到缓冲区中用户指定的行; V:查看缓冲区的全部内容,打印到终端上。 三、电话客户服务模拟 一个模拟时钟提供接听电话服务的时间(以分钟计),然后这个时钟将循环的 自增1(分钟)直到达到指定时间为止。在时钟的每个"时刻",就会执行一次检查来看看对当前电话服务是否已经完成了,如果是,这个电话从电话队列中删除,模 拟服务将从队列中取出下一个电话(如果有的话)继续开始。同时还需要执行一个检查来判断是否有一个新的电话到达。如果是,其到达时间被记录下来,并为其产生一个随机服务时间,这个服务时间也被记录下来,然后这个电话被放入电话队列中,当客户人员空闲时,按照先来先服务的方式处理这个队列。当时钟到达指定时间时,不会再接听新电话,但是服务将继续,直到队列中所偶电话都得到处理为止。 基本要求: (1)程序需要的初始数据包括:客户服务人员的人数,时间限制,电话的到达速率,平均服务时间 (2)程序产生的结果包括:处理的电话数,每个电话的平均等待时间 四、停车场管理 设停车场是一个可停放n辆车的狭长通道,且只有一个大门可供汽车进出。在停车场内,汽车按到达的先后次序,由北向南依次排列(假设大门在最南端)。若停车场内已停满n辆车,则后来的汽车需在门外的便道上等候,当有车开走时,便道上的第一辆车即可开入。当停车场内某辆车要离开时,在它之后进入的车辆必须先退出停车场为它让路,待该辆车开出大门后,其他车辆再按原次序返回车场。每辆车离开停车场时,应按其停留时间的交费(从进入便道开始计时)。在这里假设汽车从便道上开走时不收取任何费用 基本要求: (1)汽车的输入信息格式为(到达/离去的标识,汽车牌照号码,到达/离去的时间)

DDSZ1实验指导书

Tianhuang Teaching Apparatuses 天煌教仪 电机系列实验 DDSZ-1型 电机及电气技术实验装置Motor And Electric Technique Experimental Equipment 实验指导书 天煌教仪 浙江天煌科技实业有限公司

DDSZ-1型电机及电气技术实验装置受试电机铭牌数据一览表

DDSZ-1型电机及电气技术实验装置交流及直流电源操作说明 实验中开启及关闭电源都在控制屏上操作。开启三相交流电源的步骤为: 1)开启电源前。要检查控制屏下面“直流电机电源”的“电枢电源”开关(右下角)及“励磁电源”开关(左下角)都须在“关”断的位置。控制屏左侧端面上安装的调压器旋钮必须在零位,即必须将它向逆时针方向旋转到底。 2)检查无误后开启“电源总开关”,“关”按钮指示灯亮,表示实验装置的进线接到电源,但还不能输出电压。此时在电源输出端进行实验电路接线操作是安全的。 3)按下“开”按钮,“开”按钮指示灯亮,表示三相交流调压电源输出插孔U、V、W及N上已接电。实验电路所需的不同大小的交流电压,都可适当旋转调压器旋钮用导线从这三相四线制插孔中取得。输出线电压为0-450V(可调)并可由控制屏上方的三只交流电压表指示。当电压表下面左边的“指示切换”开关拨向“三相电网电压”时,它指示三相电网进线的线电压;当“指示切换”开关拨向“三相调压电压”时,它指示三相四线制插孔U、V、W和N输出端的线电压。 4)实验中如果需要改接线路,必须按下“关”按钮以切断交流电源,保证实验操作安全。实验完毕,还需关断“电源总开关”,并将控制屏左侧端面上安装的调压器旋钮调回到零位。将“直流电机电源”的“电枢电源”开关及“励磁电源”开关拨回到“关”断位置。 开启直流电机电源的操作: 1)直流电源是由交流电源变换而来,开启“直流电机电源”,必须先完成开启交流电源,即开启“电源总开关”并按下“开”按钮。 2)在此之后,接通“励磁电源”开关,可获得约为220V、0.5A不可调的直流电压输出。接通“电枢电源”开关,可获得40~230V、3A可调节的直流电压输出。励磁电源电压及电枢电源电压都可由控制屏下方的1只直流电压表指示。当将该电压表下方的“指示切换”开关拨向“电枢电压”时,指示电枢电源电压,当将它拨向“励磁电压”时,指示励磁电源电压。但在电路上“励磁电源”与“电枢电源”,“直流电机电源”与“交流三相调压电源”都是经过三相多绕组变压器隔离的,可独立使用。 3)“电枢电源”是采用脉宽调制型开关式稳压电源,输入端接有滤波用的大电容,为了不使过大的充电电流损坏电源电路,采用了限流延时的保护电路。所以本电源在开机时,从电枢电源开合闸到直流电压输出约有3~4秒钟的延时,这是正常的。 4)电枢电源设有过压和过流指示告警保护电路。当输出电压出现过压时,会自动切断输出,并告警指示。此时需要恢复电压,必须先将“电压调节”旋钮逆时针旋转调低电压到正常值(约240V以下),再按“过压复位”按钮,即能输出电压。当负载电流过大(即负载电阻过

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