版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、结构化设计方法结构化设计方法( (SD- Structured Design) ) 结构化设计就是采用最佳的可能方法设计系统各组成部分以及各成分之间的相互联系的技术,也可以说,结构化设计是这样一个过程,它决定用哪些方法把哪些部分联系起来,才能解决好某个具有清楚定义的问题. 结构化设计方法是基于模块化、自顶向下细化、结构模块化、自顶向下细化、结构化程序设计化程序设计等程序设计技术基础发展起来的。 它所提供的方法和原则,主要是用来指导软件的概要设计。它还提供了一种 “结构图” 的描述工具,是专门用来描述软件的总体结构的。 结构化设结构化设计的计的目的目的 使程序的结构尽可能反使程序的结构尽可能反映
2、映要解决的问题的结构要解决的问题的结构结构化设结构化设计的计的任务任务 完成目标系统的完成目标系统的系统结构图系统结构图() 结构化设计属于结构化设计属于面向数据流面向数据流 的设计方法。的设计方法。 在软件的需求分析阶段,数据流是软件开发人员考虑问题的出在软件的需求分析阶段,数据流是软件开发人员考虑问题的出发点和基础。数据流从系统的输入端向输出端,则要经历一系列的发点和基础。数据流从系统的输入端向输出端,则要经历一系列的变换或处理。用来表现这个过程的数据流(变换或处理。用来表现这个过程的数据流(DFD),),实际上就是软件实际上就是软件系统的逻辑模型。系统的逻辑模型。 面向数据流的设计要解决
3、的任务,就是在上述需求分析的基础面向数据流的设计要解决的任务,就是在上述需求分析的基础上,将上,将DFD图图 映射(映射(MappingMapping)- - 软件系统的结构软件系统的结构。 换句话说,这类设计方法,允许把用换句话说,这类设计方法,允许把用 DFDDFD图表示的系统逻辑模图表示的系统逻辑模型,很方便地转换成对于软件结构的初始设计描述。型,很方便地转换成对于软件结构的初始设计描述。 结构化设计方法中,软件的结构一律用结构化设计方法中,软件的结构一律用 图来描述。图来描述。目标系统的DFDSC 图 - Structured Chart 该图常用来表示系统的该图常用来表示系统的软件结
4、构软件结构。利用。利用它可以清楚地表达软件结构中它可以清楚地表达软件结构中模块间的层次模块间的层次调用关系和模块之间的联系调用关系和模块之间的联系。 SD目标系统的SC1、在系统结构图中的模块一、典型的系统一、典型的系统结构形式结构形式原子模块: 在系统结构图中通常是指不能再分割的底层模块 完全因子分解系统 如果一个软件系统,它的全部实际加工 (即数据计算或处理)都是由底层的原子模块来 完成,而其它所有非原子模块仅仅执行控制或 协调功能。传入模块AA传入模块 从下属模块取得数据,进行某些处理,再将其结果 传给上级模块。在此,将它传送的数据流称为逻辑输入 数据流。 在系统结构图中有四种类型的模块
5、:逻辑输入数据流成绩录入成绩录入 传出模块 从上级模块获得数据,进行某些处理,再将其结果 传给下属模块。在此,将它传送的数据流称为逻辑输出 数据流。 传出模块DD逻辑输出数据流成绩输出成绩输出 变换模块 也叫加工模块。它是从上级模块获得数据,进行 特定的处理,将其转换为其他形式,再传回上级模块 它所加工的数据流叫做变换数据流。 变换模块CB变换数据流协调模块 对所有下属模块进行协调和管理的模块。在一个 好的系统结构图中,协调模块应在较高层出现。协调模块YXYX1变换流变换流 根据基本系统模型,信息通常以根据基本系统模型,信息通常以“外部世界外部世界”的形式进的形式进入软件系统,经过处理后再以入
6、软件系统,经过处理后再以“外部世界外部世界”的形式离开的形式离开系统。信息沿输入通路进入系统,同时由外部形式变换系统。信息沿输入通路进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经加工处成内部形式,进入系统的信息通过变换中心,经加工处理以后再沿输出通路变换成外部形式离开软件系统。当理以后再沿输出通路变换成外部形式离开软件系统。当数据流图具有这些特征时,这种信息流就叫做数据流图具有这些特征时,这种信息流就叫做变换流变换流。5.5.1 基本概念基本概念目标目标:是给出设计软件结构的一个系统化的途径是给出设计软件结构的一个系统化的途径。5.5 面向数据流的设计方法面向数据流的设
7、计方法1、变换型数据流图、变换型数据流图输入变换输出2事务流事务流当数据流图当数据流图“以事务为中心以事务为中心”,也就是说,数,也就是说,数据沿输入通路到达一个处理据沿输入通路到达一个处理T T,这个处理根据输,这个处理根据输入数据的类型在若干个动作序列中选出一个来入数据的类型在若干个动作序列中选出一个来执行。这类系统的特征,是具有在多种事务中执行。这类系统的特征,是具有在多种事务中选择执行某种事务的能力。事务型结构由至少选择执行某种事务的能力。事务型结构由至少一条接受路径、一个事务中心和若干条动作路一条接受路径、一个事务中心和若干条动作路径组成。这类数据流应该划为一类特殊的数据径组成。这类
8、数据流应该划为一类特殊的数据流,称为流,称为事务流事务流。 2、事务型数据流图、事务型数据流图事务中心活动通路T事务3.变换型系统结构图取得数据iaeo变换数据给出数据传入部分变换中心传出部分- 具有变换型数据流图主模块C变换成D取得C给出D取得BB变换成CD变换成E给出E取得AA变换成BAABBBCCDCDED取得数据CD变换数据给出数据协调模块变换模块传出模块- 具有变换型系统结构图DFD-SC传入模块“事务” 引起、触发或启动某一引起、触发或启动某一动作或一串动作的任何数据动作或一串动作的任何数据、控制信号、事件或状态的、控制信号、事件或状态的变化。变化。4.事务型系统结构图 由它接受一
9、项事务,根据事务处理的特点和性质由它接受一项事务,根据事务处理的特点和性质 选择分配一个适当的处理单元,然后给出结果。选择分配一个适当的处理单元,然后给出结果。输入输入- 事务型事务型 数据流图数据流图ABCDEFGH中心变换中心变换输出输出上图所示的是最典型的事务型的上图所示的是最典型的事务型的DFD图,当外部信息沿接受路图,当外部信息沿接受路径进入系统后,经过事务中心的识别和分析获得某一特定值,径进入系统后,经过事务中心的识别和分析获得某一特定值,就可以根据这个特定的值来启动与该特定值相应的动作路径。就可以根据这个特定的值来启动与该特定值相应的动作路径。这类结构的特征,是具有能在这类结构的
10、特征,是具有能在多种事务中选择执行某一事务的多种事务中选择执行某一事务的能力。能力。像在现代软件中常见的像在现代软件中常见的菜单选择菜单选择,就是事务型结构的一,就是事务型结构的一个典型的实例。个典型的实例。输入输入- 事务型事务型 数据流图数据流图ABCDEFGH中心变换中心变换输出输出逻辑逻辑输入输入物理物理输入输入逻辑逻辑输出输出物理物理输出输出中心变换部分是系统的中心加工部分。从输入设备获得的物理输入中心变换部分是系统的中心加工部分。从输入设备获得的物理输入一般要经过编辑、数制转换、格式变换以及合法性检查等一系列的一般要经过编辑、数制转换、格式变换以及合法性检查等一系列的预处理操作,最
11、后才变成逻辑输入传送给事务中心。同样,从事务预处理操作,最后才变成逻辑输入传送给事务中心。同样,从事务中心中又产生的是逻辑输出,它要经过格式转换、组成物理块等一中心中又产生的是逻辑输出,它要经过格式转换、组成物理块等一系列处理后,才成为物理输出。所谓逻辑输入,是指离物理输入端系列处理后,才成为物理输出。所谓逻辑输入,是指离物理输入端最远,但仍可以被看作系统的输入的那些数据流。逻辑输出则是离最远,但仍可以被看作系统的输入的那些数据流。逻辑输出则是离系统的物理输出端最远,但仍可视为系统的输出的数据流。系统的物理输出端最远,但仍可视为系统的输出的数据流。 在事务型系统结构图中,事务中心模块按所接受的
12、事务的类型,选择某一个事务处理模块执行。u 各个事务处理模块是并列的,依赖于一定的选择条件,分别完成不同的事务处理工作。每个事务处理模块可能要调用若干个操作模块,而操作模块又可能调用若干个细节模块。u 由于不同的事务处理模块可能有共同的操作,所以某些事务处理模块可能共享一些操作模块。同样不同的操作模块可以有相同的细节,所以某些操作模块又可以共享一些细节模块。u 对于事务型系统的结构图可以有多种不同的形式。例如,有多层操作层或没有操作层。事务中心输入已分析的作业内部表示的作业结果- 事务型系统结构(层次)图输出结果调度作业信息读入作业分析作业事务1事务2事务3事务4操作2操作3 操作4 操作5操
13、作6操作1细节2细节3 细节4 细节5细节6细节1细节7结果-简化的事务型系统结构图事务中心得到作业 作业结果输出结果分析 调度事务1事务2事务3 简化了的事务型系统结构图是把分析作业和调度都归入事务中心模块:SDSD方法方法实施的要点是:方法方法实施的要点是:(1 1)首先研究、分析和审查数据流图,从软件的需)首先研究、分析和审查数据流图,从软件的需求规格说明中弄清数据流加工的过程。求规格说明中弄清数据流加工的过程。(2 2)然后根据数据流图决定问题的类型,即确定是)然后根据数据流图决定问题的类型,即确定是变换型变换型还是还是事务型事务型。针对两种不同的类型分别进行分。针对两种不同的类型分别
14、进行分析处理。析处理。(3 3)由数据流图推导出系统的初始结构图。)由数据流图推导出系统的初始结构图。(4 4)利用一些试探性原则来改进系统的初始结构图,)利用一些试探性原则来改进系统的初始结构图,直到得到符合要求的结构图为止。直到得到符合要求的结构图为止。(5 5)修改和补充数据词典。)修改和补充数据词典。 (6 6)制定测试计划。)制定测试计划。 二、二、SD方法概述方法概述精化数据流图流类型映射成事务结构区分事务中心和数据接收通路映射成变换结构区分输入和输出分支用启发式设计规则精化软件结构导出接口描述和全程数据结构复查详细设计事务分析变换分析“事务”“变换”正确错误面向数据流方法的设计过
15、程面向数据流方法的设计过程5.5.2 变换分析变换分析将具有将具有变换型变换型的的DFD图导出图导出SC图图在 图上标出逻辑输入、逻辑输出和变换中心的分界abdvrp变换中心变换中心c,e 逻辑输入w,u 逻辑输出- 具有变换型数据流图DFD的分析和划分对于较复杂的DFD,不同的设计人员可能得出不同的划分结果。以下是几种可能遇到的情况及其处理方法:n有些系统没有变换中心,逻辑输入和逻辑输出是完全相同的数据流,此时应如实划分为传入和传出两部分n变换中心甚至传出部分也可能从系统外接收某些输入数据流,称为二次输入数据,分析时应照实情把二次输入数据看成变换中心或输出部分的一个成分;n有些DFD可能缺少
16、应有的细节,设计人员可对用做分析的DFD进行补充,必要时甚至重画完成第一级分解abvrpdeCmCACTCEC,eC,eU,wU,w变换中心变换中心顶层 用于控制的主模块第一层第一级分解后的 SC 图协调模块YXYX输入信息处理控制模块输入信息处理控制模块,协调协调对所有输入数据的接收对所有输入数据的接收输出信息处理控制模块,协输出信息处理控制模块,协调输出信息的产生过程调输出信息的产生过程变换中心控制模块,管理对变换中心控制模块,管理对内部形式的数据的所有操作内部形式的数据的所有操作abvrpdeCmCA1CE1C eU CA2QPRCE2e c,p pr r w,uw上图是SC的另一种画法
17、,在第一层不是每一分支只画一个模块,而是按实际情况确定模块的数量。逻辑输入和逻辑输出都具有两个数据流,而中心加工含有三个加工,故可画出(2+3+2)共7个模块。n对一个大型系统中的复杂数据流可以用两个或多个模块完成上述一个模块的控制功能;n在能够完成控制功能并且保持好的耦合和内聚特性的前提下,尽量使第一级控制中模块数目取最小值完成第二级分解abvrpde变换中心变换中心把数据流图中的每个处理映射成软件结构中一个适当的模块:从变换中心的边界开始沿输入路径向外动,把输入通路中每个处理映射成软件结构中Ca控制下的一个低层模块;沿输出通路向外移动,把输出通路中每个处理映射成直接或间接受模块Ce控制的一
18、个低层模块;把变换中心内的每个处理映射成受Ct控制的一个模块完成第二级分解abvrpdeCa变换中心变换中心对逻辑输入的分解CEBADabdeccbaABCCaEDde 逻辑输入模块的调用与执行过程CACEBADabdecCAGet CGet EBtoCAtoBDtoEaecReadDGet BRead Ac,eabbbcde输入分支的第二种分解图:为显式的表示数据流在输入过程中经历的变换,在图中增加3个变换模块,并在模块中加上Read、Get等字样,使结构更加清晰明了abvrpdeCE变换中心变换中心对输出的分解WUVvuwCTQPR eC,prU,w对变换中心加工的分解 prw,u从变换分
19、析导出的初始 SC 图CACBAEDCTQPRCEWUVCmc, eW,uW,uC,e获得完整的 图数据流图数据流图系统结构图系统结构图请将上列给出的具有变换型的DFD图导出它的SC图a1a2b1c1c1p1P2 运用变换分析方法建立系统的SC时需注意以下几点: 主模块主模块ABCA1A2A3A11A12A13低功能内聚信息内聚通信内聚过程内聚时间内聚逻辑内聚巧合性内聚 高强弱 内聚性模块独立性低非直接耦合数据耦合标记耦合控制耦合外部耦合公共耦合内容耦合 高弱 强耦合性模块独立性 具有高内聚低耦合的模块才是模块独立性比较强的模块。 具有高内聚低耦合的模块才是模块独立性比较强的模块。模块A模块D
20、模块C模块B非直接耦合通过参数表通过参数表传递传递数据数据( (数据耦合数据耦合) )通过参数表通过参数表传递传递数据结构数据结构( (数据耦合数据耦合) ) 具有松散型 的耦合类型 假设仪表板的功能如下:(1)通过模通过模/数数(A/D)转换实现传感器和微处理机接口;转换实现传感器和微处理机接口;(2)在发光二极管(在发光二极管(LCD)面板上显示数据;)面板上显示数据;(3)指示每小时英里数(指示每小时英里数(mph),行驶的里程,每加仑),行驶的里程,每加仑油行驶的英里数(油行驶的英里数(mpg)等等;)等等;(4)指示加速或减速;指示加速或减速;(5)超速警告:如果车速超过超速警告:如
21、果车速超过55英里小时,则发出超英里小时,则发出超速警告铃声。速警告铃声。在软件需求分析阶段,应该对上述每项性能和其它要在软件需求分析阶段,应该对上述每项性能和其它要求进行全面的分析,并建立起相应的文档资料,得出数据求进行全面的分析,并建立起相应的文档资料,得出数据流图。流图。具体的设计步骤如下:例子例子:一个汽车数字仪表板的设计一个汽车数字仪表板的设计1、复查基本、复查基本系统模型系统模型2、复查并精化、复查并精化数据流图数据流图 SPS mph 超超速速值值 计计算算 里里程程 产产生生 加加速速/减减 速速显显示示 读读入入 旋旋转转 信信号号 收收集集 并并求求 平平均均 旋旋转转信信
22、号号 信信号号数数 /秒秒 (SPS) 确确定定 加加速速 / 减减速速 箭箭头头指指示示 下下箭箭头头 水水平平线线 上上箭箭头头 转转换换成成 转转 /分分 (rpm) 计计算算 mph 和和 超超速速值值 计计算算 燃燃料料 消消耗耗 产产生生 mpg 显显示示 读读入入 并并核核实实 计计算算 gph 燃燃料料流流量量 传传感感器器信信号号 燃燃料料流流量量 gph mph mpg mpg 显显示示 产产生生 里里程程 显显示示 英英里里 显显示示 发发出出 警警告告 铃铃声声 警警告告铃铃声声 产产生生 mph 显显示示 mph 显显示示 rpm SPS rpm 3、确定数据流图的类
23、型、确定数据流图的类型这一步的任务是确定数据流图是变换型数据流图还是事务型数据流图。先根据流图中占优势的属性,确定数据流的全局特性;把具有和全局特性不同的特点的局部区域孤立出来,以后按照这些子数据流的特点精化根据全局特性得出的软件结构.从上图中可以看出,数据沿着两条输入通路(旋转信号和燃料流量传感器信号)进入系统,然后沿着五条通路(4个显示,一个警告铃声)离开,没有明显的事务中心。因此,可以认为这个数据流图的类型是变换型数据流图。4、确定输入流和输出流的边界,从而孤立出变换中心、确定输入流和输出流的边界,从而孤立出变换中心SPSrpmmpg 显示gphmpgmph(SPS)mph超速值计算里程
24、读入旋转信号收集并求平均旋转信号信号数/秒确定加速/减速箭头指示产生加速/减速显示下箭头水平线上箭头转换成转/分(rpm)计算mph 和超速值计算燃料消耗产生mpg显示读入并核实计算gph燃料流量传感器信号燃料流量产生里程显示英里显示发出警告铃声警告铃声产生mph显示mph 显示SPSrpm5、进行、进行“第一级分解第一级分解”CmCtCaCe第一级分解的方法第一级分解的结果数字仪表板控制数据转换控制接收传感器信号驱动仪表板输入控制变换控制输出控制6、进行、进行“第二级分解第二级分解”第二级分解的方法BADCCmCa CB D A第二级分解的结果:接收传感器信号转换成 rpm计算 gph收集
25、sps读旋转信号读燃料流量接收传感器信号确定加速/减速计算 mph计算 mpg计算里程 未经精化的输入结构 未经精化的变换结构 未经精化的输出结构驱动仪表板加速/减速显示显示 mpg显示里程发出警告铃声显示 mph发光二极管显示7、使用设计度量和设计准则对第一次分割、使用设计度量和设计准则对第一次分割得到的软件结构进一步精化得到的软件结构进一步精化 对于从前面的设计步骤得到的软件结构,还可以进行许多修改:(1)输入结构中的模块“转换成rpm”和“收集sps”可以合并;(2)模块“确定加速减速”可以放在模块“计算mph”下面,以减少耦合;(3)模块“加速减速显示”可以相应地放在模块“显示mph”
26、的下面。精化的数字仪表板系统的软件结构数字仪表板控制接收传感器信号数据转换控制驱动仪表板计算里程计算mpg计算mph计算gph转换成rpm发出警报铃声显示里程显示mpg显示mph读旋转信号读燃料流量确定加速/减速加速/减速显示发光二极管显示从变换分析导出的初始 SC 图a1a2b1c1c1p1P2 CACTPCEBC1C2Cma2p1,p2p1,p2a2A2A1a1a2p1,p2a2C1P2P1-是将具有事务型的DFD图导出SC图事务中心事务源5.5.3 事务分析事务分析 在上述的DFD图中,数据流A是一个带有 “请求请求”性质的信息即事务源。而加工I 则具有 “事务中心”的功能,它后继的三个
27、加工L,M,N 是并列的,在加工I的选择控制下完成不同功能的处理。最后经过加工 O 将某一加工处理的结果整理输出。事务分析的映射方法A_CTL调度调度接收通路C 通路B 通路总控A通路B_CTLC_CTL接收分支接收分支:映射方法和变换分析类似发送分支发送分支:包含一调度模块,控制下层的所有活动模块,每个活动流通路映射成与它的流特征相对应的结构主模块给出H取得ALMNA GHBECF D书库保管员F2F1F5F6F7- 采购子系统的 SC 图 -混合结构混合结构 数据流图数据流图系统结构图系统结构图5.5.4 软件模块结构的改进软件模块结构的改进一、模块功能的完善化当模块不能完成规定的功能时,
28、当模块不能完成规定的功能时,必须回送出错标志,向它的调用必须回送出错标志,向它的调用者报告出现这种例外情况的原因者报告出现这种例外情况的原因 二、消除重复功能,改善软件结构。在结构上完全相似,可能只是在结构上完全相似,可能只是在数据类型上不一致。此时可在数据类型上不一致。此时可以采取完全合并的方法,只需以采取完全合并的方法,只需在数据类型的描述上和变量定在数据类型的描述上和变量定义上加以改进。义上加以改进。当两个模块具有当两个模块具有一部分相同一部分相同的功能时,的功能时,把这部分相同的功能分离为一个单独的把这部分相同的功能分离为一个单独的模块,可以免除对这一部分内容的重复模块,可以免除对这一
29、部分内容的重复编码和测试,节约软件的开发费用。编码和测试,节约软件的开发费用。物理输入相似部分相似模块的各种合并方案的示意图分析R1, R2,找出其相同部分,从R1和R2中分离出去,重新定义成一个独立的下层模块R1 和R2剩余的部分据情况还可与它的上级模块合并,以减少像控制的传递、全局数据的引用和接口等复杂性 三、模块的作用范围应在控制范围之内。 一个模块的作用范围,是指受这个模块中的判定影响的所有模块。 关于模块的作用范围/控制范围的关系示意图 当模块G作出一个判定之后,若需要C工作,则必须把信号送回给D,然后,再由D把信号送给B,才能送到C模块C超出了G的控制域,从而也增加了数据的传送量和
30、模块间的耦合,使模块间出现了控制耦合控制耦合对于一个理想SC图中的模块设计, 所有受到一个判定影响的模块应该都从属该判定所在的模块,最好位于作出判定的那个模块本身及它的直接下属模块。计算实发工资取得工资数据工人实发工资工人实发工资人员实发工资计时制工资额税收扣款薪金制工资额常规扣款编外人员 工资编外人员税款编外人员扣款如:为了确定需计算工资工人属于哪一类,若在如:为了确定需计算工资工人属于哪一类,若在“取得工资数据取得工资数据” 模块中加入判定工资类型的语句,此时判定的作用范围将超出的控模块中加入判定工资类型的语句,此时判定的作用范围将超出的控制范围(只包含它本身),违反了两个关系的原则,其不
31、良后果是,制范围(只包含它本身),违反了两个关系的原则,其不良后果是,在在 “取得工资数据取得工资数据” 和和 “计算实发工资计算实发工资”两个模块中,将对两个模块中,将对 “工工资类型资类型”进行重复的判定。进行重复的判定。修正方法是,在修正方法是,在“计算实发工资计算实发工资”模块内设一判定语句,模块内设一判定语句,判断包含在判断包含在“工资数据工资数据”中的中的“工资类别工资类别”。这样,哪。这样,哪一类的一类的 “实发工资模块实发工资模块” 执行将直接依赖于判定的结果。执行将直接依赖于判定的结果。我们把这个我们把这个 “实发工资实发工资”的模块称为这一的模块称为这一判定的作用范判定的作
32、用范围围。 四、尽可能地减少高扇出结构,随着深度增大扇入。扇入:指模块的上级模块数。 (即共有多少个模块需要 调用这个模块)扇出:指模块调用其下属模块数目调用的下属模块数应控制在小于3-4个模块。PP1P2Q1Q2Q3Q一个模块的扇入越大,则共享该模块的上级模块数目也就越多。但如果一个模块的扇入太大,例如超过8,而它又不是公用模块,则说明该模块可能具有多个功能。在这种情况下应当对它 进一步分析并将其功能分解。通过分析得知它是3功能的模块。对它进行分解,增加三个中间模块Q1,Q2,Q3,而把公用部分提取出来留在Q中,作为这三个中间模块的公用模块,使各模块的功能单一化,从而改善模块结构。经验证明,
33、一个设计得好的软件模块结构,通常上层扇出比较高,中间上层扇出比较高,中间层扇出较少,底层扇入到有高扇入的公用模块中层扇出较少,底层扇入到有高扇入的公用模块中。 五、模块的大小要适中。50-100 模块的大小,可以用模块中所含语句的数量的多少来衡量。六、应限制使用如下应限制使用如下三种病态联接:三种病态联接: 七、应设计出功能可预测的模块,但要避免过分受限制的模块。例如,例如, A-为不及格成绩处理模块。为不及格成绩处理模块。 避免过分受限制避免过分受限制: 例如对数组长度的使用限制,在成绩处理中,由于要处理各例如对数组长度的使用限制,在成绩处理中,由于要处理各班级人数不等,所以数组长度的定义应该随着学生人数的不同而班级人数不等,所以数组长度的定义应该随着学生人数的不同而不同不同.为了能够适应将来的变更,软件模块中局部数据结构的大小为了能够适
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 积分商城积分购物合同模板
- 补充合同的条款解说
- 正规权威严谨委托检测服务合同
- 招标启示政府服装采购
- 香烟酒水紧急购销合同
- 解除房屋买卖合同重要通知
- 购销合同中英文版合同争议解决
- 印花税购销合同的合同纠纷执行和解
- 工艺品购销合同范本电子版
- 供应商合同中的供应商信用政策
- 新概念第一册语法知识点汇总(完美版)
- 建筑力学完整版全套ppt课件
- 【课件】Unit4Readingforwriting课件高中英语人教版(2019)必修第二册
- 学生学习过程评价量表
- 1.我们生活的世界
- 第9章 政府单位预算会计核算
- 欧陆590系列数字直流式调速器中文说明书
- 分布函数(课堂PPT)
- 古城南京的城市演变与现代规划
- 测绘地理信息业务档案保管期限表(20150305)..
- 国家开放大学电大《物流信息系统管理》期末题库及答案
评论
0/150
提交评论