1、第3章CAD/CAM软件基础要点:1.了解工程数据库的概念和数据结构2.掌握数据库的建立和使用方法3.熟悉关系型数据库4.了解软件工程3.1数据的有关概念1.数据是描写客观事物的数字、字符、文字的集合,是能输入计算机处理的符号。2.数据元素是数据的基本单位,是数据集合一个相对独立的个体。3.数据的逻辑结构是数据间的逻辑关系,数据的物理结构是数据的存储结构,包括数据元素及关系,以位及节点表示。4.数据类型即变量种类,决定数据大小。3.2数据结构3.2.1线性表1.线性表的逻辑结构 是简单的n个元素的有限序列,逻辑结构:(a1,a2,a3,ai-1,ai,ai+1,an-1,an)2.线性表的顺序
2、存储结构 用一组连续存储单元存放逻辑顺序的数据,数据元素的地址和逻辑顺序关系一一对应线性表的顺序寻址若每个元素占用 j 个存储单元,第一个元素的地址为Loc(ai),则i个元素的地址为:Loc(ai)=Loc(ai)+(i-1)Xj线性表顺序存储结构的特点如下:(1)均匀性,每个元素占用的长度相同(2)有序性,存储顺序和逻辑顺序相同线性表的删除和插入运算(1)删除一个数据元素从数据表中删除一个数据元素后,被删除元素后的所有元素均向前移动一个单元。(2)插入一个数据元素将一个数据插入到 i 位置,原 i 位置及其后的所有数据均向后移动一个单元,然后在 i 位置插入新数据。3.线性表的链式存储结构
3、(1)链式存储结构的特点 存储单元是不连续的,存储的除数据外,还有直接后继和直接前趋,这种存储映像称为称为结点,包含数据域和指针域。(2)单向链表 只有一个指针域,指向直接后继(或前趋),指向第一个结点的地址指针称为表头,数据域可空,最后结点的指针域为空。见图3-1。单向链表的建立、删除和插入1.建立单向链表:定义数据类型,数据域和指针域,指针域中存放直接后继地址2.删除一个元素:删除 i 个数据元素,将第 i-1个结点指针指向 i+1个结点,释放 i 结点的空间。3.插入一个元素:在 i 个数据元素前插入一个数据,先建一个新结点,将 i-1 结点的指针指向新结点,新结点指针指向 i 结点的地
4、址。(3)双向链表 在单向链表的基础上,每个结点增加一个直接前趋的指针域,构成双向链表。双向链表的第一个结点没有直接前趋,指针域为空,最后一个结点也没有直接后继,指针域也为空。再增加一个结点做表尾,存放最后一个结点的地址。双向链表的结构示意图如3-2所示。双向链表的建立、删除、插入1.建立双向链表:定义结点的数据结构,数据存放信息,Next指针域、Last指针域、Hand表头、Rear表尾的地址。2.删除数据元素:删除第 i 元素,结点i-1的后继指针指向 i+1、i+1的前趋指针指向 i-1,释放 i 空间。3.插入数据元素:在 i 结点前插入,建立新结点,其Next指向i,Last指向i-
5、1;i-1结点Next的指向新结点,原 i 结点Last的指向新结点.4.循环链表 将链表的首尾相接,成为循环链表。可分为单向和双向循环链表两种。见图3-4 循环链表和普通链表相比,其最后结点的指针域不空,存放指向表头的地址。循环链表查找结点比较方便,可以从表中的任意结点位置出发,顺链指针找出需要的结点。链表与线性表比较具有的特点1.删除和插入结点时,其他数据元素不需要移动;2.不需要事先分配存储空间,不浪费存储单元;3.表的容量根据需要动态申请和释放,存储空间利用率高。链表适用于表容量变化,增删操作频繁。3.2.2树和二叉树 树是一类重要的非线性数据结构,元素之间存在明显的层次关系。1.树:
6、由1个或多个结点组成的有限集T,其中有一个特定的结点称为根结点,其余结点分为n个互不相交的有限集,这些集本身又是一棵树,称为该树的子树。有2个特点:(1)树中至少有一个根结点,(2)各棵子树是相互独立,互不相交的集合。2.二叉树 二叉树的每个结点至多有2棵子树,有左右区分,二叉树与一般树的区别在于:(1)一般树至少要有1个结点,二叉树可以是空的;(2)一般树每个结点可以有多个子树,二叉 树每个结点的子树不能超过2个;(3)一般树的子树次序不分,二叉树的子树有左右之分,不能颠倒。3.二叉树的遍历 以D、L、R分别表示访问根结点,遍厉左子树、遍历右子树,则二叉树的遍历方式有6种:DLR,LDR,L
7、RD,DRL,RDL,RLD。如果限定先左后右,则只有3种方式,DLR(前序遍历),LDR(中序遍历),LRD(后序遍历)。一次完整的遍历过程,把树中的结点信息转化为一个线性序列。4.二叉排序树 二叉排序树的检索效率很高。排序规则为:若左子树不空,则左子树中的所有结点的值均小于根结点的值;右子树不空,则右子树中所有的值均大于或等于根结点的值。根据定义,可以将一个数据元素序列构造为二叉排序树,通常采用逐步插入结点的方法来构造一个二叉排序树:设 K=k1,k2,kn为数据元素序列,从k1开始依次取出序列中的元素建立二叉排序树,每取出一个元素ki,按下列原则建立二叉排序树的一个新结点:(1)若二叉排
8、序树为空,则新的数据元素就是二叉排序树的根结点。(2)若二叉排序树非空,则将该数据元素与根结点的进行比较,小于根结点的值,该数据插入到左子树中,否则,插入右子树。3.3工程数据库3.3.1工程数据和工程数据库1.工程数据的特点及管理:工程数据的特点是数据量大、种类多、结构复杂、动态变化、集中管理、整个生产过程共享。2.数据库系统原理:数据库管理系统提供对数据的定义、建立、检索、修改等操作,以及对数据的安全性、完整性、保密性的统一控制。3.数据库的数据模型:常用有层次型、网络型、关系型3种。层次型是树型结构,相互关系是“一对多”,如图3-7所示;网络型是网状结构,相互关系是“多对多”,如图3-8
9、所示;关系型是二维表的组织结构,每一张二维表称为一个关系,表中每一行是一个记录,列为相应的数据项。表3-1为平口钳的零件数据库。3.3.2FOXPRO基本特征:1.符合XBASE标准,2.与Foxbase和Dbase完全兼容,3.良好的图形用户界面,4.多窗口技术,5.400多条命令和技术,6.文本编辑器功能强,7.图形工具多,8.较完善的真编辑功能,10.内嵌SQL,11.Rushmore查询,12.纠错机制,13.内部报表生成器,14.键盘、鼠标2种操作,15.自定义键盘,16.硬件适应性好,17.支持网络环境,18.速度快,19.数据传输安全。5.与高级语言的接口 FoxPro的数据库功
10、能强,但分析计算能力差。由数据库文件(*.dbf)生成文本(*.txt)送C。C语言的文本文件追加到数据库中。FoxPro的SDF标准数据格式文件。FoxPro的DELIMITED通用格式数据文件。2)FoxPro文件的建立和接收 建立文本格式文件:COPY TO TYPE 接收文本格式文件:APPEND FROM TYPE FoxPro与C语言的接口;3.4软件工程方法和开发工程软件基本要求:1.满足用户需要,2.完整文档资料、培训,3.可靠的质量,4.可维护性和可扩充性。3.1.4软件开发和软件工程1.应用软件开发:为解决特定问题而编,应考虑应用支撑环境,包括硬件、软件等。2.软件工程概念
11、:和硬件一样,软件有自身的一些特点:软件的功能是对数据进行处理;软件是一种结构复杂的智力产品;软件的功能、所有方法需要说明;软件需要严格测试。3.4.2软件开发步骤1.软件分析阶段:包括系统定义和软件需求分析两个方面;2.软件设计阶段:确定软件结构,划分软件模块及联系和接口;3.软件实现阶段:软件编码和测试;4.软件维护阶段:改错、适应和完善3.4.3软件开发方法1.组织和实施:软件开发一般是多人合作完成,要考虑技术结构合理,人员配套。软件开发2种模式:一种是生命周期模式,另一种是原形模式。2.分析与设计:了解应用背景,构思数据模型,善于抽象思维,逐步完善。3.编码与测试:先搭编码的框架,逐步完善。测试找出软件的错误。反复进行。
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。