计算机二级ms基础知识
公共基础知识
第1章
数据结构与算法
1.1算法
1.算法的基本概念
(1)概念:算法是指一系列解决问题的清晰指令。
(2)4个基本特征:可行性、确定性、有穷性、拥有足够的情报。
(3)两种基本要素:对数据对象的运算和操作、算法的控制结构(运算和操作时问的顺序)。
(4)设计的基本方法:列举法、归纳法、递推法、递归法、减半递推技术和回溯法。
2.算法的复杂度
(1)算法的时间复杂度:执行算法所需要的计算工作量。
(2)算法的空间复杂度:执行算法所需的内存空间。
1.2数据结构的基本概念
数据结构指相互有关联的数据元素的集合,即数据的组织形式。其中逻辑结构反映数据元素之间逻辑关系;存储结构为数据的逻辑结构在计算机存储空间中的存放形式,有顺序存储、链式存储、索引存储和散列存储4种方式。
数据结构按各元素之间前后件关系的复杂度可划分为:
(1)线性结构:有且只有一个根节点,且每个节点最多有一个直接前驱和一个直接后继的非空数据结构。
(2)非线性结构:不满足线性结构的数据结构。
1.3线性表及其顺序存储结构
1.线性表的基本概念
线性结构又称线性表,线性表是最简单也是最常用的一种数据结构。
2.线性表的顺序存储结构
•元素所占的存储空间必须连续。
•元素在存储空间的位置是按逻辑顺序存放的。
3.线性表的插入运算
在第i个元素之前插入一个新元素的步骤如下:
步骤一:把原来第n个节点至第i个节点依次往后移一个元素位置。
步骤二:把新节点放在第i个位置上。
步骤三:修正线性表的节点个数。
在最坏情况下,即插入元素在第一个位置,线性表中所有元素均需要移动。
4.线性表的删除运算
删除第i个位置的元素的步骤如下:
步骤一:把第i个元素之后不包括第i个元素的n-i个元素依次前移一个位置;
步骤二:修正线性表的结点个数。
1.4栈和队列
1.栈及其基本运算
(1)基本概念:栈是一种特殊的线性表,其插入运算与删除运算都只在线性表的一端进行,也被称为“先进后出”表或“后进先出”表。
•栈顶:允许插入与删除的一端。
•栈底:栈顶的另一端。
•空栈:栈中没有元素的栈。
(2)特点。
•栈顶元素是最后被插入和最早被删除的元素。
•栈底元素是最早被插入和最后被删除的元素。
•栈有记忆作用。
•在顺序存储结构下,栈的插入和删除运算不需移动表中其他数据元素。
•栈顶指针top动态反映了栈中元素的变化情况
(3)顺序存储和运算:入栈运算、退栈运算和读栈顶运算。
2.队列及其基本运算
(1)基本概念:队列是指允许在一端进行插入,在另一端进行删除的线性表,又称“先进先出”的线性表。
•队尾:允许插入的一端,用尾指针指向队尾元素。
•排头:允许删除的一端,用头指针指向头元素的前一位置。
(2)循环队列及其运算。
所谓循环队列,就是将队列存储空间的最后一个位置绕到第一个位置,形成逻辑上的环状空间。
入队运算是指在循环队列的队尾加入一个新元素。
当循环队列非空(s=1)且队尾指针等于队头指针时,说明循环队列已满,不能进行人队运算,这种情况称为“上溢”。
退队运算是指在循环队列的队头位置退出一个元素并赋给指定的变量。首先将队头指针进一,然后将排头指针指向的元素赋给指定的变量。当循环队列为空(s=0)时,不能进行退队运算,这种情况称为“下溢”。
1.5线性链表
在定义的链表中,若只含有一个指针域来存放下一个元素地址,称这样的链表为单链表或线性链表。
在链式存储方式中,要求每个结点由两部分组成:一部分用于存放数据元素值,称为数据域;另一部分用于存放指针,称为指针域。其中指针用于指向该结点的前一个或后一个结点(即前件或后件)。
1.6树和二叉树
1.树的基本概念
树是简单的非线性结构,树中有且仅有一个没有前驱的节点称为“根”,其余节点分成m个互不相交的有限集合T1,T2,…,T}mm,每个集合又是一棵树,称T1,T2,…,T}mm为根结点的子树。
•父节点:每一个节点只有一个前件,无前件的节点只有一个,称为树的根结点(简称树的根)。
•子节点:每~个节点可以后多个后件,无后件的节点称为叶子节点。
•树的度:所有节点最大的度。
•树的深度:树的最大层次。
2.二叉树的定义及其基本性质
(1)二叉树的定义:二叉树是一种非线性结构,是有限的节点集合,该集合为空(空二叉树)或由一个根节点及两棵互不相交的左右二叉子树组成。可分为满二叉树和完全二叉树,其中满二叉树一定是完全二叉树,但完全二叉树不一定是满二叉树。二叉树具有如下两个特点:
•二叉树可为空,空的二叉树无节点,非空二叉树有且只有一个根结点;
•每个节点最多可有两棵子树,称为左子树和右子树。
(2)二叉树的基本性质。
性质1:在二叉树的第k层上至多有2k-1个结点(k≥1)。
性质2:深度为m的二叉树至多有2m-1个结点。
性质3:对任何一棵二叉树,度为0的结点(即叶子结点)总是比度为2的结点多一个。
性质4:具有n个结点的完全二叉树的深度至少为[log2n]+1,其中[log2n]表示log2n的整数部分。
3.满二叉树与完全二叉树
(1)满二叉树:满二叉树是指这样的一种二叉树:除最后一层外,每一层上的所有结点都有两个子结点。满二叉树在其第i层上有2i-1个结点。
从上面满二叉树定义可知,二叉树的每一层上的结点数必须都达到最大,否则就不是满二叉树。深度为m的满二叉树有2m-1个结点。
(2)完全二叉树:完全二叉树是指这样的二叉树:除最后一层外,每一层上的结点数均达到最大值;在最后一层上只缺少右边的若干结点。
如果—棵具有n个结点的深度为k的二叉树,它的每—个结点都与深度为k的满二叉树中编号为1~n的结点——对应。
3.二叉树的存储结构
二叉树通常采用链式存储结构,存储节点由数据域和指针域(左指针域和右指针域)组成。二叉树的链式存储结构也称二叉链表,对满二叉树和完全二叉树可按层次进行顺序存储。
4.二叉树的遍历
二叉树的遍历是指不重复地访问二叉树中所有节点,主要指非空二叉树,对于空二叉树则结束返回。二叉树的遍历包括前序遍历、中序遍历和后序遍历。
(1)前序遍历。
前序遍历是指在访问根结点、遍历左子树与遍历右子树这三者中,首先访问根结点,然后遍历左子树,最后遍历右子树;并且,在遍历左右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。前序遍历描述为:若二叉树为空,则执行空操作;否则①访问根结点;②前序遍历左子树;③前序遍历右子树。
(2)中序遍历。
中序遍历是指在访问根结点、遍历左子树与遍历右子树这三者中,首先遍历左子树,然后访问根结点,最后遍历右子树;并且,在遍历左、右子树时,仍然先遍历左子树,然后访问根结点,最后遍历右子树。中序遍历描述为:若二叉树为空,则执行空操作;否则①中序遍历左子树;②访问根结点;③中序遍历右子树。
(3)后序遍历。
后序遍历是指在访问根结点、遍历左子树与遍历右子树这三者中,首先遍历左子树,然后遍历右子树,最后访问根结点,并且,在遍历左、右子树时,仍然先遍历左子树,然后遍历右子树,最后访问根结点。后序遍历描述为:若二叉树为空,则执行空操作;否则①后序遍历左子树;②后序遍历右子树;③访问根结点。
1.7查找技术
(1)顺序查找:在线性表中查找指定的元素。
(2)最坏情况下,最后一个元素才是要找的元素,则需要与线性表中所有元素比较,比较次数为n。
(2)二分查找:二分查找也称折半查找,它是一种高效率的查找方法。但二分查找有条件限制,它要求表必须用顺序存储结构,且表中元素必须按关键字有序(升序或降序均可)排列。对长度为n的有序线性表,在最坏情况下,二分查找法只需比较log2n次。
1.8排序技术
(1)交换类排序法。
•冒泡排序:通过对待排序序列从后向前或从前向后,依次比较相邻元素的排序码,若发现逆序则交换,使较大的元素逐渐从前部移向后部或较小的元素逐渐从后部移向前部,直到所有元素有序为止。在最坏情况下,对长度为n的线性表排序,冒泡排序需要比较的次数为n(n-1)/2。
•快速排序:是迄今为止所有内排序算法中速度最快的一种。它的基本思想是:任取待排序序列中的某个元素作为基准(一般取第一个元素),通过一趟排序,将待排元素分为左右两个子序列,左子序列元索的排序码均小于或等于基准元素的排序码,右子序列的排序码则大于基准元素的排序码,然后分别对两个子序列继续进行排序,直至整个序列有序。最坏情况下,即每次划分,只得到一个序列,时间效率为O(n2)。
(2)插人类排序法。
•简单插入排序法:把n个待排序的元素看成为一个有序表和一个无序表,开始时有序表中只包含一个元素,无序表中包含有n-1个元素,排序过程中每次从无序表中取出第一个元素,把它的排序码依次与有序表元素的排序码进行比较,将它插入到有序表中的适当位置,使之成为新的有序表。在最坏情况下,即初始排序序列是逆序的情况下,比较次数为n(n-1)/2,移动次数为n(n-1)/2。
•希尔排序法:先将整个待排元素序列分割成若干个子序列(由相隔某个“增量”的元素组成的)分别进行直接插入排序。待整个序列中的元素基本有序(增量足够小)时,再对全体元素进行一次直接插入排序。
(3)选择类排序法。
•简单选择排序法:扫描整个线性表。从中选出最小的元素。将它交换到表的最前面;然后对剩下的子表采用同样的方法,直到子表空为止。最坏情况下需要比较n(n-1)/2次。
•堆排序的方法:首先将一个无序序列建成堆;然后将堆顶元素(序列中的最大项)与堆中最后一个元素交换(最大项应该在序列的最后)。不考虑已经换到最后的那个元素,只考虑前n-1个元素构成的子序列,将该子序列调整为堆。反复做步骤②,直到剩下的子序列空为止。在最坏情况下,堆排序法需要比较的次数为0(nlog2n)
第2章
程序设计基础
2.1程序设计方法与风格
(1)设计方法:指设计、编制、调试程序的方法和过程,主要有结构化程序设计方法、软件工程方法和面向对象方法。
(2)设计风格:良好的设计风格要注重源程序文档化、数据说明方法、语句的结构和输入输出。
2.2结构化程序设计
1.结构化程序设计的原则
结构化程序设计强调程序设计风格和程序结构的规范化,提倡清晰的结构。
(1)自顶向下:即先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标。
(2)逐步求精:对复杂问题,应设计一些子目标做过渡,逐步细化。
(3)模块化:把程序要解决的总目标分解为分目标,再进一步分解为具体的小目标,把每个小目标称为一个模块;
(4)限制使用GOT0语句。
2.结构化程序的基本结构与特点
(1)顺序结构:自始至终严格按照程序中语句的先后顺序逐条执行,是最基本、最普遍的结构形式。
(2)选择结构:又称为分支结构,包括简单选择和多分支选择结构。
(3)重复结构:又称为循环结构,根据给定的条件,判断是否需要重复执行某一相同的或类似的程序段。
结构化程序设计中,应注意事项:
(1)使用程序设计语言中的顺序、选择、循环等有限的控制结构表示程序的控制逻辑。
(2)选用的控制结构只准许有一个人口和一个出口。
(3)程序语言组成容易识别的块,每块只有一个入口和一个出口。
(4)复杂结构应该用嵌套的基本控制结构进行组合嵌套来实现。
(5)语言中所没有的控制结构,应该采用前后一致的方法来模拟。
(6)尽量避免GOT0语句的使用。
2.3面向对象的程序设计
面向对象方法的本质是主张从客观世界固有的事物出发来构造系统,强调建立的系统能映射问题域。
•对象:用来表示客观世界中任何实体,可以是任何有明确边界和意义的东西。
•类:具有共同属性、共同方法的对象的集合。
•实例:一个具体对象就是其对应分类的一个实例。
•消息:实例间传递的信息,它统一了数据流和控制流。
•继承:使用已有的类定义作为基础建立新类的定义技术。
1 实验说明
2015 年3 月至6 月,该实验研究以软件2013 级甲班35 人、乙班32人、丙班33人为样本。这三个班级的整体学生水平(包括智力水平、基础成绩等)基本一致,没有明显的所谓的优班或差班之说。公共基础课程的周课时为4(共计约3小时)。本次实验的教学单元包括:线性表、树与二叉树、查找与排序。在甲、乙、丙三个班级,传统教学模式、现代教学模式和混合教学模式都被轮流实施。每一次教学单元结束都要对三个班级进行教学评估测试。在此,作者将该研究分成以下三个阶段。
实验前阶段(Pre-experimental stage):该阶段主要是确定好每个教学单元实施后学生应该具备的知识和能力,也可称作准备阶段。
“线性表”单元在甲班执行传统模式,乙班执行现代模式,丙班执行混合模式。“树与二叉树”单元在甲班执行现代模式,乙班执行混合模式,丙班执行传统模式。“查找与排序”单元在甲班执行混合模式,乙班执行传统模式,丙班执行现代模式。见表1。这样设计使得每种教学模式都在三个班级里执行过,便于比较三种模式下的学生学习成效。为了比较和研究教学模式对于班级的影响,该阶段下,作者对三个班级的学生进行了这些尚未教学的单元的内容和能力测试。本文中将教学实施前进行的这次测试统称为初始测试。
实验阶段(Experimental stage):该阶段下,每个单元的教学过程真实发生。因此,该阶段也可称为教学阶段。按照事先设定的每个班级每个教学单元下的教学模式,遵循教学计划,开展教学活动。在每个教学单元结束时,学生都要接受教学评估测试,最终形成各班的测试成绩数据库。
实验后阶段(Post-experimental stage):该阶段主要分析学生测试成绩,也可称为分析阶段。通过比较三个教学单元在三个班级的成绩,结合教学模式的选择,得出相关结论。
2 实验目标
2.1 总体目标
1)确定传统教学模式和现代教学模式下的实践意义、教学实效,以及学生的探索能力水平和自主学习的积极性等。
2)实现传统模式、现代模式和混合模式下的教学实践模型,通过比较这些模式下的教学测试成绩,确定三种模式的实效。
3)通过累积性测试成绩,确定教学模式的实效,量化和比较学生们的表现。
2.2具体目标
1)重点观察传统教学模式和现代教学模式下的二年级学生的表现和教学成效。
2)通过教学实践,详尽说明传统模式、现代模式和混合模式下的教学项目的模型。
3)比较同一课程不同教学单元下的传统模式、现代模式和混合模式的学生成绩。
4)根据教学评估测试成绩的分析与观察,包括学生的典型错误,确定补救措施。根据班级实际情况,选择教学模式,指导教学实践,切实提高学生学习效果。
3 研究假说
1相比较传统教学模式和教师传播知识的状况下,让学生参与教学评估过程,学生的表现会更好。
2 在传统教学模式下融入更加积极主动的角色,可以提升学生的表现和学习的主动性。
为了实现预设目标和上述假说,作者采用的教学策略包括:观察法(观察学生行为)、对话、问题意识、记录学生学习进步的测试法、个人评论和讨论组等。在甲、乙、丙三个班级的三个单元的教学实践中,作者采用了传统、现代和混合的教学模式。
4 实验过程与结果
实验前阶段的一个重要任务就是对于三个班级学生的初始测试。初始测试建立在学生们先前基础之上,测试内容是即将要进行教学的三个单元的内容。初始测试的成绩见表2。该表可以反映出三个班级的平均知识水平和学习习惯。在实验前,三个班级的整体学生情况相差无几。
在实验阶段,学生们先后学习了三个单元的课程内容,收获了新的学习习惯和对于计算机公共基础知识的认知,以及学习策略上的进步。在教学实践中,三种教学模式都选取了相应的教学策略。
1)对于传统教学模式,主要教学策略包括:系统介绍、知识点讲解、问答式对话、练习、引导观察等。这些教学策略的应用着重于一下几个方面。
(1)教师用心讲解,学生努力听讲。
(2)教师提出正确观点和概念,学生努力接受。
(3)对于作业或学习疑问,学生们经常复制或直接采纳教师传播的知识。
2)对于现代教学模式,主要教学策略包括:探索学习法、启发式对话、问题意识、案例研究、对比法、韦恩图、期待引导与概念图等。现代教学模式下,教师起主导作用,指导学生,解释概念、过程和术语,引导学生团队协作,经常提问,表达或支持某种观点,并尽力完成任务。
3)混合教学模式主要采用的教学策略包括:系统介绍、练习、探索学习法、启发式对话、问题意识和韦恩图等。在课堂上采用这些策略时,学生经常会直接采纳教师教学中提供的信息。此外,学生们也会联合他人解决问题,继而形成自己的观点、能力、知识和对于计算机公共基础的认知。
实验后阶段主要是对于三个班级评估测试结果的数据应用。教学评估测试的题目类型主要包括:配对连线、填空、单项选择、思考题和结构化论述等。三个班级的成绩情况可参考表3~表5和图1~图3。
为了分析三个教学单元的不同教学模式下学生成绩变化,作者进行了同一个班级的三个教学单元的成绩比较。同一个班级的三个教学单元的成绩情况可参考表6~表8和图4~图6。
由上述图表可以看出,现代交互式教学模式下,各个班级的教学评估测试成绩都明显更好。为了进一步分析,作者设计了一个三维比较图,可以更加清晰地看出三个班级在各个单元测试的成绩情况。见图7。
5 结论
通过实验前和实验后的评估测试结果,可分析得出如下结论要点。
1)实验前测试中,三个班级进行了皆未教学的初始测试,平均分极其接近,说明这三个班级在实验前的知识水平、学习习惯、学习方式和能力都旗鼓相当。
2)在实验的教学单元评估测试中,三个班级的平均分数高于各自的初始测试分数,而且根据教学模式的不同有所差异。
(1)甲班的初始测试平均分为62.7,在传统教学模式中的平均分升为64.5,在紧接着的结合传统与现代混合的教学模式中,平均分为71.5,在以互动教学为主的现代模式中的平均分为79.5。这说明对于公共基础知识课程内容的传统教学模式并非足够有效。对于知识点,学生有一般概念,但还不具备应用这些知识的能力。
(2)乙班的初始测试平均分为64.0,在传统教学模式中的平均分升为72.5,在混合模式中,平均分为81.5,在现代模式中平均分为85.5。这说明现代教学模式的高效性。学生们被鼓励探索他们需要的信息,通过分析和综合运用这些信息,解决了实际问题。
(3)丙班的初始测试平均分为65.5,在传统教学模式中平均分为68.0,在混合模式中平均分为74.0,在现代模式中平均分为86.5。这结果更说明现代交互式教学可以克服传统教学模式的缺点,而两者的结合也可能取得相对传统教学模式更好的成绩。
本次实验的主要目的是为了验证研究之初设定的假说。。从最终结果可见,学生参与教学过程较多的模式下,取得的成绩和表现明显高于以一味介绍或解释为主的传统教学模式。。而且,当传统模式下给予教师一个主动的角色,学生的学习积极性和整体表现也会明显提高。
此外,对于寻求问题的解决方案,分析某个知识点的原理,,运用已有认知和信息环境来升级个人知识储备,并使学生主动或喜欢上学习的有效方法之一就是让学生更多地参与教学过程。这样,迫使学生学习就变成了引导学生探索他们需要的知识。通过团队获取新知,和学生自主学习获取新知,交互式教学策略都是较好的方法。所以,对于学生独自或团队式地面对教师提出的问题,既可灵活运用自有知识,也可众多过往解决方案中寻找答案,从而归纳出自己的观点;既可与团队成员讨论,也可独立思考,并主动适应和理解师生之间或同学之间的观点变化,从而学习到更多的知识与技能。
通过比较三个班级的成绩,作者的假说被证明成立。即交互式为主的现代教学模式可以提升学生们的学习成绩,也一定程度上提升了学生们主动参与学习的积极性,并塑造他们真诚、独立且乐于沟通与团队协作的价值观。
参考文献
[1]张大均.教与学的策略[M].北京:人民教育出版社,2003.
【关键词】Ms.Net插件技术;机电保护整定计算软件体系;架构
一、前言
随着经济与社会的快速发展,我国的电力系统得到前所未有的发展,电网的规模逐渐的扩大,电网的结构也越来越复杂。机电保护整定管理工作是实现全面的系统化、自动化、网络化以及微软化的集成管理,对提高电网的日常管理工作效率具有非常重要的作用。通过将Ms.Net插件技术应用在继电保护整定管理工作中,构建相应的继电保护整定计算软件体系,能够实现继电保护的网络化、信息化管理,能够和电力系统继电保护整定计算软件与其他系统实现集成创造条件。
二、Ms.Net插件技术的概述
Ms.Net是由微软公司针对传统软件系统的存在的缺陷,耗时数年,耗费10亿美元在2002年正式推出的一个软件运行和开发平台,该新平台是软件历史以及工具开发史上的一个新的里程碑。Ms.Net插件技术的原理表现为:通过统一的程序结构调整不同的功能模块,以其实现调用不同功能,达到扩充程序功能的目标。从结构方面看,Ms.Net插件本质上是一个组件,组件技术是将复杂、庞大、单独的应用程序分成若干个由简单代码集合形成的模块,所有的模块能够自给自足的运行。Ms.Net插件技术中的组件主要包括COM/DCOM/COM、CORBA等,其中COM组件就有以下几个优点:COM提供方位软件服务的一致性,对于存在与系统软件或者动态连接库中的服务,都能够当成COM对象,采用相同的方法进行访问;COM的每一个功能模块能够提供各自的服务,开发者根据使用对象开发不同的程序,简化了系统的复杂性;COM具有版本管理功能,不需要改变既有的客户程序,通过多个接口实现添加新接口或者新功能,便于新旧版本的更换;COM支持二进制接口,便于开发者用不同的语言进行编写。
三、基于Ms.Net插件技术的继电保护整定计算软件系统架构
基于Ms.Net插件技术的继电保护整定计算软件系统架构的总体结构主要包括以下几个方面:
(1)可视化操作界面。可视化操作界面是继电保护整定计算软件系统架构的重要组成部分,是实现可视化保护整定计算以及故障分析的基础。可视化操作界面能够为继电保护整定计算提供一个专用的绘图工具栏,该工具栏包括等值系统、发电机、普通线路、母线、变压器、断路器等电器元件,并且能够在画板上对各个图元进行删除、旋转、移动等操作,通过该工具栏对图元进行操作,在图画板上将继电保护系统的接线图绘制出来,并将相应设备的参数作为图元输入,由计算机自动识别各种网络拓扑结构。由于可视化操作界面能够为用户提供真实对象的模拟画面,致使面向对象的图形用户界面更便于用户理解与使用。
(2)数据库模块。整个继电保护整定计算系统的运行是从数据库开始的,算法模块需要从数据库中提取相应的数据进行计算,并且最终的整定计算结果以及相应故障处理结果都会被储存在数据库中以供调用,因此数据库也是继电保护整定计算运行的终点。此外,通过在数据库中录入相应的信息或者修改数据,能够搜索相应的数据或者对数据库进行修改,所以数据库还是用户与软件系统交换的媒介。数据库的种类有许多,例如Oracle、Microsoft FoxPro、Microsoft Access等,由于Microsoft Access具有良好的数据结构的可移植性、可重用性以及可扩展性,Microsoft Access在继电保护整定计算软件架构中具有很好的应用前景。
(3)整定计算模块。整定计算模块根据后台数据库中的数据,根据相应的整定规则,对电力系统输电线路段保护进行整定计算,相邻保护之间的配合应该根据分支系数进行计算,选择短路类型,人为的拟定系统的运行方式进行故障计算,获得最小、最大的分支系数。
(4)故障分析计算模块。故障分析计算模块的主要功能包括:针对各种电压电网提供强大的故障计算功能,根据故障的类型进行相关故障的计算,同时能对故障位置的各种电气参量进行计算;当继电保护运行方式改变时,能够对网络数学模型进行修正;识别网络拓扑结构,创建相应的数学模型,并分别创立网络的零序导纳矩阵与正序导纳矩阵。
四、基于Ms.Net插件技术的继电保护整定计算软件体系架构的实践应用
为了保证基于Ms.Net插件技术的继电保护整定计算软件体系架构的适用性和有效性,文章选取某电网进行继电保护整定计算校验。Ms.Net插件技术将继电保护整定计算软件分解成数据访问层、中间业务逻辑层、用户表示层三个部分,利用Ms.Net插件技术的自动描述反射功能,及时的发现各个组件的插拔、装配以及动态发现,当用户进行继电保护整定计算时,主程序会根据用户的要求自动搜索目录下的每一个文件,并通过插件管理器调用不同的插件。当继电保护整定原理改变之后,应该调用原理级插件,通过调用插件更新继电保护整定计算软件系统的故障计算模块,将更新后的组件进行集成,并实现整定计算、数据传输以及数据显示等。通过实践证明,基于Ms.Net插件技术的继电保护整定计算软件系统架构的计算精度相对较高、计算速度相对较快,并且当继电保护整定计算原理改变之后,能够自动调用原理级插件,给出科学、合理的保护定值,保证继电保护整定计算系统的可靠性与有效性。
五、结束语
总而言之,随着Ms.NET插件技术的发展,基于Ms.NET插件技术的继电保护整定计算软件系统的专用性、安全性、可靠性、有效性更高。因此,基于Ms.NET插件技术的继电保护整定计算软件系统架构在电力系统中的应用具有非常广泛的前景。
参考文献
[1]卓越,吕飞鹏,黄斌,易雷,胡鹏飞.Ms.Net插件技术在继电保护整定计算软件中的应用研究[J].继电器,2005,33(21):21-26.
[2]李勇.基于VB.NET 的输电线路继电保护整定计算软件设计[J].电力科学与工程,2008,24(3):23-26.
一、选择题
选择题部分主要靠记忆和背诵为主,最佳的复习时间是考试前10天,机械记忆的维持时间不会太久,所以考前10天背诵效果最好。
二、操作题部分
Word重点难点汇总
1.字体的设置(如果题目提供样图片样张让你自行设置,修改的尽量相似即可)
2.段落设置(注意首行缩进,段落间距的单位有行和磅,单位可以手动输入,行距中的固定值和多倍行距)
3.样式的新建,修改,复制,赋予,样式集的使用(考试频率高,题量大)
4.替换是考试的重点(批量修改内容、样式,批量删除内容)
5.选择中的矩形选择和选择格式相似的文本
6.选择性粘贴(粘贴Excel表格到文档中,并随着数据源改变而自动更新)
7.插入系统自带封面(运动型封面要先将日期域控件和时间控件删除)
8.文档中插入表格,并进行格式设置(文本转换成表格,重复标题行是重点)
9.图表部分中复合图表(注意主次坐标轴的设置)是重点也是难点。
10.利用图片形状和smartart做一份个人简历
11.插入超链接(链接到文件、网址,链接到本文档中的位置),快捷键是ctrl+k。
12.页眉页脚部分,绝对是word文档中最重要的考点也是最难的考点。
13.初级版:统一的页眉页脚,为页眉添加一条上宽下窄的线条,添加公司logo。
14.升级版:奇偶页不同,首页不同,设置页码格式2017计算机二级office终极复习计划2017计算机二级office终极复习计划。
15.终极版:不同的章节显示不同的页眉,多种页码格式,结合奇偶页不同和首页不同。
16.插入文本框模板,绘制文本框,文本框格式的设置,(利用文本框制作一个论文封面)
17.插入文档属性,插入域(类型为文档信息的域,styleref域),将所选内容保存到文档部件库,域代码的修改。
18.插入艺术字(上弯弧的文本效果),首字下沉的设置,系统日期的插入(自动更新),符号的插入(对号和五角星等)
19.为word文档应用一个主题。
20.页面设置:页边距、装订线、纸张方向/大小、页码范围(对称页边距,拼页)、页眉页脚距边界的距离的设置,指定行网络,设置行数。
21.分栏部分:设置栏数、分隔线,栏间距,分栏符,表格和图表跨栏居中。
22.分隔符部分,重点是分节符(下一页,连续,偶数页,奇数页)
23.分清水印和页面背景的不同。
24.页面边框的设置,艺术型边框经常考,请注意比较页面边框,段落边框,字符边框的不同。
25.自动生成目录,插入特定级别的目录,目录格式的设置,更新目录
26.脚注部分,插入脚注尾注,设置脚注格式,脚注和尾注的相互转化。
27.题注部分,本知识点经常和多级列表同时考核,难度系数比较高,题注的插入,题注样式的修改,交叉引用,表目录的插入。
28.索引部分,标记索引项,插入索引,批量删除索引(秋新增考点)
29.邮件合并部分(注意原文档和结果文档的区别,注意编辑收件人列表的设置,规则的设置)
30.中文的简繁转换,新建批注,文档的保护。
31.大纲视图的使用,导航窗格的使用,显示比例的调整。
Excel难点重点汇总
表格格式的调整(行高、列宽,边框、底纹)
1.单元格格式的调整(对齐和数字,其中要注意的是跨列合并居中,自定义格式的设置)
2.数据的选择性粘贴(转置粘贴)
3.绝对引用,相对引用,混合引用。
4.条件格式的设置(难点是利用公式确定的条件格式)
5.套用表格格式
6.为数据区域定义名称,将表格转换为区域。
(1)将10~12月三张销量表中的数据通过合并计算功能合并到一张新的工作表中,将该张工作表更名为“四季度销售情况”。
(2)完善“四季度销售情况”:为图书编号列输入标题“图书编号”;在图书编号列右边插入书名、图书类别和单价三列;通过VLOOKUP函数分别引用工作表“图书目录”中的相关数据,在“四季度销售情况”表中输入书名、图书类别和单价这三列的数据。
(3)在数据列表的右侧增加一列“销售额”,根据“销售额=销量×单价”构建公式计算出各类图书的销售额。对数据表进行适当的格式化操作:设置数据格式、设置边框底纹、设置对齐方式等,也可以套用格式。
(4)为“四季度销售情况”创建一个数据透视表,放在新的工作表,更名为“数据透视”,并将其移动到“四季销售情况”表的右边。在数据透视表中汇总字段;按图书类别汇总销量,同时将书名作为“报表筛选字段”。
一.选择题(每小题2分)
在下列各题的A),B)C),D)4个选项中,只有1个选项是正确的,请将正确选项填涂在答题卡相应的位置上,答在试卷上不得分.
1.循环链表的主要优点是( B )
A) 不在需要头指针了
B) 从表中任一结点出发都能访问到整个链表
C) 在进行插入p删除运算时,能更好地保证链表不断开
D) 已知某个结点的位置后,能够容易找到它的直接前件
2.栈底至栈顶依次存放元素A,B,C,D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是( B )
A)ABCDE
B)DCBEA
C)DBCEA
D)CDABE
3.n个顶点的强连通图的边数至少有( C )
A)n-1
B)n(n-1)
C)n
D)n+1
4.在结构化程序设计思想提出之前,在程序设计中曾强调程序的效率,现在,在程序的效率相比,人们更重视程序的( C )
A)安全性
B)一致性
C)可理解性
D)合理性
5.模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准则是模块的( C )
A)抽象和信息隐蔽
B)局部化和封装化
C)内聚性和耦合性
D)激活机制和控制方法
6.软件开发的结构化生命周期方法将软件生命周期划分成( A )
A)定义p开发p运行维护
B)设计阶段p编程阶段p测试阶段
C)总体设计p详细设计p编程调试
D)需求分析p功能定义p系统设计
7.在软件工程中,白盒测试法可用于测试程序的内部结构,此方法将程序看作是( A )
A)路径的集合
B)循环的集合
C)目标的集合
D)地址的集合
8.在数据管理技术发展过程中,文件系统与数据库系统的主要区别是数据库系统具有( A )
A)特定的数据模型
B)数据无冗余
C)数据可共享
D)专门的数据管理软件
9.数据库设计包括两个方面的设计内容,它们是( A )
A)概念设计和逻辑设计
B)模式设计和内模式设计
C)内模式设计和物理设计
D)结构特性设计和行为特性设计
10.实体是信息世界中广泛使用的一个术语,它用于表示( C )
A)有生命的事物
B)无生命的事物
C)实际存在的事物
【练习二】
一、选择题(每小题2分)
在下列各题的A).B).C),D)的4个选项中,只有1个是正确的,请将正确的选项涂写在答题卡的相应位置上,答在试卷上不给分.
1.由两个栈共享一个存储空间的好处 是( B )
A)减少存取时间,降低下溢发生的机率
B)节省存储空间,降低下溢发生的机率
C)减少存取时间,降低上溢发生的机率
D)节省存储空间,降低下溢发生的机率
2.设有两个串p和q,求p和q中首次出现位置的运算称作( B )
A)连接
B)模式匹配
C)求子串
D)求串长
3.n个顶点的连接图中边的条数至少为( C )
A)0
B)1
C)n-1
D)n
4.对象实现了数据和操作的结合,是指对数据和数据的操作进行( C )
A)结合
B)隐藏
C)封装
D)抽象
5.下列叙述中,正确的是( D )
A)软件就是程序清单
B)软件就是存放在计算机中的文件
C)软件应包括程序清单和运算结果
D)软件包括程序和文档
6.软件设计中,有利于提高模式独立性的一个准则是( C )
A)低内聚低藕合
B)低内聚高藕合
C)高内聚低藕合
D)高内聚高藕合
7.软件生命周期中花费时间最多的阶段是( D )
A)详细设计
B)而今编码
C)软件测试
D)软件维护
8.下列4项中说法不正确的是( C )
A)数据库减少了数据冗杂
B)数据库中的数据可以共享
C)数据库避免了一切数据的重复
D)数据库具有较高的数据的独立性
9.下列4项中,必需进行查询优化的是( A )
A)关系数据库
B)网状数据库
C)层次数据库
D)非关系模型
10.最常用的一种基本数据模型是关系数据模型,它的表示应采用( D )
A)树
B)网络
C)图
D)二维表
二.填空题(每空2分)
请将每一空的正确答案写在答题卡[ 11 ]~[ 15 ]序号的横线上,答在试卷上不得分.
1. 当线系性表采用顺序存储时,其主要特点是[ 逻辑结构中相临的结点在存储结构中仍相临 ]。
2. 软件工程的出现是由于[ 软件危机的出现 ]。
3. 单元测试又称模块测试,一般采用[ 白盒法 ]测试。
4. 数据库恢复5. 是将数据库从[ 错误 ]恢复到某一已只的正确状态。
5. 数据的基本单位是[ 数据元素 ]。
D)一切事物
二.填空题(每空2分)
请将每一空的正确答案写在答题卡[ 11 ]~[ 15 ]序号的横线上,答在试卷上不得分.
1.常用的黑盒测试有等价分类法p[ 边值分析法 ]p因果图法和错误推测法4种.
2.测试的目的的暴露错误,评价程序的可靠性;而[ 调试 ]的目的是发现错误的位置并改正错误.
3.软件维护活动包括以下几类:改正性维护p适应性维护p[ 完善性 ]维护和预防性维护.
4.在面向对象的设计中,用来请求对象执行某一处理或回答某些信息的要求称为[ 消息 ].
5.关键字ASC和DESC分别表示[ 升序排列和降序排列 ]的含义.
【练习三】
1. 选择题(每小题2分)
在下列各题的A)B).C).D)4个选项中,只有1个是正确的,请将正确选项填在大答题卡上,答在试卷上不给分.
1.根据数据结构中各数据元素之间前后件关系的复杂程度,一般将数据结构分成( C )
A) 动态结构和静态结构
B)紧凑结构和非紧凑结构
C)线新性结构和非线性结构
D)内部结构和外部结构
2.设一棵二叉树中有3个叶子结点,有8个度为1的接点,则该二叉树中总的接点数为( B )
A)12
B)13
C)14
D)15
3.在下列几种排序方法中,要求内存最大的是( D )
A)插入批排序
B)选择排序
C)快速排序
D)归并排序
4.下列叙述中,不属于结构化程序设计方法的重要原则是( B )
A)自顶向下
B)由底向上
C)模板化
D)限制使用goto语句
5.下列不属于软件调试技术的是( B )
A)强行排错法
B)集成测试法
C)回嗍法
D)原因排除法
6.为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为( B )
A)PAD图
B)N-S图
C)结构图
D)数据流图
7.软件复杂性1度量的参数包括( B )
A)效率
B)规模
C)完整性
D)容错性
8.下列叙述中,不属于数据库系统的是( B )
A)数据库
B)数据库管理系统 C数据库管理员
D)数据库应用系统
9.数据库系统的核心是( B )
A)数据库
B)数据库管理系统
C)数据模型
D)软件工具
10.视图设计一般有3中设计次序,下列不属于视图设计的是( B )
A)自顶向下
B)由外向内
C)由内向外
D)自底向上
2. 填空题(每空2分)
请将每一个空的正确答案写在答题卡11___15的横线上,答在试卷不给分.
1.算法的工作量大小和实现算法所需的存储单元多少分别称为算法的[ 时间复杂度和空间复杂度 ]。
2.数据结构包括数据的逻辑结构.数据的[ 存储结构 ]以及对数据的操作运算。
3.可以把具有相同属性的不同对象归类,称为[ 对象类 ]。
4.软件工程包括3个要素,分别为方法.工具和[ 过程 ]。
1.1 概述
红叶二级水电站位于四川省阿坝州理县境内的杂谷脑河干流上,为杂谷脑河干流(芦干桥至下庄河段)规划开发的第二梯级电站。电站为低闸引水式开发,由首部挡水和取水建筑物、引水建筑物和发电厂房等建筑物组成,装机容量为3×3.5 MW。
1.2 厂房基础地质条件
厂房位于杂谷脑河左岸漫滩上,地形平坦开阔。厂基覆盖层厚度大于40 m,从上至下共分三层:
①现代河床上部冲积(alQ
厂房建基面高程为1 917 m,位于砂卵砾石层(厂房基础地层分布图见图1),建基面以下大约12 m深处有一含卵砾石砂层,厚度变化较大,约为2 m~4.75 m,承载力低,仅有0.15 MPa~0.20 MPa,其压缩模量为15 MPa,而且局部为纯砂透镜体,厂房长期运行有可能引起不均匀沉降变形,因此须对厂房进行地基应力和基础沉降计算复核,并根据计算结果采取一定措施进行基础处理。
2 厂房地基基础设计
2.1 计算
1)地基应力计算。
计算中,地基应力计算主要选取了正常运行、非常运行、施工完建期、机组未安装、地震等工况,其计算结果见表1,表2。经计算,地基表层最大应力为0.425 MPa,含卵砾石砂层的最大地基应力为0.23 MPa,均小于地基允许承载力,故须对基础进行处理。
2)地基基础沉降计算。
基础沉降计算主要选取施工完建期、正常运行期以及地震期三种工况,根据《土力学及地基基础》,采用复合地基单向压缩分层总和法进行计算。选取地基基础建基面高程以下30 m进行计算。计算结果见表3。
通过计算可以看出:地基上下游侧的沉降差较大,须对基础进行处理。
2.2 基础处理方案比较
2.2.1 砂石桩法
砂石桩法适用于挤密松散砂土、粉土、粘性土等,也可用于处理可液化地基,砂石桩法加固的地基深度一般为7 m~8 m,而该工程的软弱层(含卵砾石砂层)位于厂房建基面以下至少12 m深度,故考虑设计桩长至少为15 m,其施工顺序为:桩架就位→打设→灌注砂→拔桩管,活瓣桩尖张开,砂留在桩孔内→桩管打到设计标高→灌注砂→拔桩管完成扩大砂桩。其主要用到的机械有:振动机、装砂料斗、振动套管等组成的振动打桩机、起重机、铲式装载机、空压机等。该方法工序复杂、用到的机械较多。
2.2.2 高压喷射注浆法
该方法主要适用于处理淤泥、淤泥质土、流塑、软塑可塑粘性土、粉土、砂土等,分为旋喷、定喷和摆喷三种类别,水电站一般采用高压旋喷。用到的主要施工机械有:根据现场地质情况选用不同功率的高压泥浆泵、高压水泵、钻机、泥浆泵、空压机、泥浆拌压机、单管等。施工中容易出现的问题有:固结体强度不匀、缩颈;压力上不去,处理效果差;压力骤然上升,灌浆量太多,投资大;钻孔、成管困难;固结体顶部下凹。同时,该方法造价高。
2.2.3 振冲法
振冲法也称振冲水动法,是利用振动器的高频振动和水泵喷射高压水流的共同作用成孔,清孔后在孔中填以砂石骨料,借振动器的水平及垂直振动,振密填料,形成碎石桩体与原地基构成复合地基以提高地基承载力和改善土体排水通道、加速土体固结。适用于处理砂土、粉土、粉质粘土、素填土和杂填土等地基。它的设计要点包括:处理范围、桩位布置、桩体深度、桩体材料、桩体直径等几方面。其施工顺序是:定位→振冲下沉→振冲至设计标高并下料→边振边下料,边上提→成桩。用到的施工机械有:振冲器、升降机具等。
结论:三种方法比较,砂石桩法施工工序较多,施工较复杂,用到的施工机械多,因而造价较高,在水电工程运用不是很多;高压喷射注浆法施工过程中对压力的要求高,对施工机械和施工技术的要求高,难度较大,但在水电工程运用比较多,整体造价较高;振冲法施工简单,造价低,多数施工后都能达到比较理想的效果。
综合以上各种方法的特点,参考其他类似工程的经验,同时考虑适度控制基础处理工程量和处理造价。经比较,采用振冲碎石桩对基础进行处理。
3 布置设计
3.1 布置参数(处理范围、桩径、桩孔深度、桩体材料)确定
由于该电站厂房建基面整体面积不大,采用全范围布置费用也不太高,但效果会更理想。因此,在厂房建基面进行满堂布置。
考虑该工程的规模和工期要求,无做现场试验的条件,设计过程中,通过工程类比,参考了其他工程的经验进行设计。考虑目前国内已有振冲器的功率都不太大,如果设计的桩径太大,而振动力不足,则施工质量难以保证,成桩的密实度不高,影响工程质量;如果设计的桩径太小,影响器械的操作,也会有施工质量不好的缺陷。因此,设计选取桩径为1 m。
该工程选用的振冲器为150 kW,土层上层为砂卵砾石层,桩径为1 m,故设计中基础中部大面积选取振冲桩桩距为2.9 m,净距1.9 m,在基础边沿进行加密处理,同时向基础外增加一排桩,故设计时基础边沿桩间距为1.45 m,实际净距0.45 m。
根据厂房基础的地质条件,建基面位于砂卵砾石层,在距建基面以下大约12 m深处,局部范围内有含卵砾石砂层,厚度约为2 m~4.75 m,故桩孔设计深度至少应为14 m~16.75 m,故设计时选取桩孔深度17.00 m。由于振冲桩深度受现场实际地质情况影响很大,故该设计深度可根据现场施工情况进行调整。
桩体材料可用含泥量不大于5%的碎石、卵石、矿渣或其他性能稳定的硬质材料,不宜使用风化易碎颗粒,其填料级配根据现场情况确定。
3.2 施工要求
由于施工方法和施工步骤对质量的影响很大,因此,施工时应严格按以下的步骤进行:
1)清理平整施工场地,布置桩位。2)施工机具就位,使振冲器对准桩位。3)启动供水泵和振冲器,水压、水量通过试验调整,将振冲器徐徐沉入土中,造孔速度宜为0.5 m/min~2.0 m/min,直到设计深度。 记录振冲器经各深度的水压、电流和留振时间。4)造孔后边提升振冲器边冲水至孔口,再放至孔底,重复两三次扩大孔径并使孔内泥浆变稀,开始填料制桩。5)大功率振冲器投料可不提出孔口,小功率振冲器下料困难,可将振冲器提出孔口填料,每次填料厚度不宜大于50 cm。将振冲器沉入填料中进行振密制桩,当电流达到规定的密实值和规定的留振时间后,将振冲器提升30 cm~50 cm。6)重复以上步骤,自上而下逐段制作桩体直至孔口,记录各段深度的填料量、最终电流值和留振时间,并均应符合设计规定。7)关闭振冲器和水泵。
4 现场施工反馈
厂房基坑开挖至基础振冲作业高程,用150 kW的振冲机试振冲基础,其振冲深度难以达到设计深度17.0 m,为了进一步探明厂房基础下层地质情况,对厂房基坑进行复勘工作。根据现场钻孔,进一步地质勘测的结果是:厂基覆盖层由上至下分为三层:①冲积砂卵砾石层,层厚变化为5.25 m~9.2 m,其中局部碎屑砂透镜体分布,层厚1 m,顶面埋深4.2 m;②冲积含砾石砂层,呈透镜体展布于厂基靠山体一侧,层厚小于1.8 m,顶面埋深8.5 m~9.2 m;③冲积含(漂块)卵砾石砂层,分布于厂基下部,其结构密实。因此,对厂房基础振冲碎石桩的布置设计作出如下调整:
1)对原设计的振冲碎石桩的深度调整为10.00 m左右,直到不能贯入为止。2)对厂房基础下层有砂层的部位,加密振冲碎石桩,其布置见图2。
振冲桩施工完成后,采用超重型动力触探(N120)结合声波穿透测试的方式对厂房基础振冲桩质量及效果进行了现场测试,其基础承载力达到0.625 MPa,变形模量E0=52 MPa,声波纵波平均速度VP=2 900 m/s。相对于基础处理前,其容许承载力及变形模量均有较大提高,满足对地基承载力和沉降的设计要求。
5 结论及评价
目前,随着国民经济的发展,水电站发展和建设都处于我国历史高峰期,由于水电站一般都处于山区,其地形地质条件复杂多变,很多的水电站都面临基础处理的问题。基础处理的方法很多,随着工程机械、施工技术的发展进步,选择安全合理、经济节约、施工简单的基础处理方法,成为工程发展的趋势,振冲法作为一种处理效果好,工程造价低,施工机械简单,施工方法可行的基础处理方法,会越来越多地运用于水电工程。
参考文献
[1]钱家欢.土力学[M].第2版.南京:河海大学出版社,2008.
[2]DL/T 5214-2005,水力水电工程振冲法处理地基技术规范[S].
[3]《简明地基基础结构设计施工资料集成》编委会.简明地基基础结构设计施工资料集成[M].北京:中国电力出版社,2007.
1.算法的基本特征:可行性、确定性、有穷性、拥有足够的情报。
2.算法的基本要素:
(1)算法中对数据的运算和操作
一个算法由两种基本要素组成:一是对数据对象的运算和操作;二是算法的控制结构。
在一般的计算机系统中,基本的运算和操作有以下4类:算术运算、逻辑运算、关系运算和数据传输。
(2)算法的控制结构:算法中各操作之间的执行顺序称为算法的控制结构。
描述算法的工具通常有传统流程图、N-S结构化流程图、算法描述语言等。一个算法一般都可以用顺序、选择、循环3种基本控制结构组合而成。
3.算法的时间复杂度
算法的时间复杂度是指执行算法所需要的计算工作量。
同一个算法用不同的语言实现,或者用不同的编译程序进行编译,或者在不同的计算机上运行,效率均不同。这表明使用绝对的时间单位衡量算法的效率是不合适的。撇开这些与计算机硬件、软件有关的因素,可以认为一个特定算法运行工作量的大小,只依赖于问题的规模(通常用整数n表示),它是问题规模的函数。即
算法的工作量=f(n)
4.算法的空间复杂度
算法的空间复杂度是指执行这个算法所需要的内存空间。
一个算法所占用的存储空间包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行过程中所需要的额外空间。其中额外空间包括算法程序执行过程中的工作单元以及某种数据结构所需要的附加存储空间。如果额外空间量相对于问题规模来说是常数,则称该算法是原地工作的。在许多实际问题中,为了减少算法所占的存储空间,通常采用压缩存储技术,以便尽量减少不必要的额外空间。
疑难解答:算法的工作量用什么来计算?
算法的工作量用算法所执行的基本运算次数来计算,而算法所执行的基本运算次数是问题规模的函数,即算法的工作量=f(n),其中n是问题的规模。
(二)数据
(1)数据集合中个数据元素之间所固有的逻辑关系,即数据的逻辑结构;
(2)在对数据元素进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;
(3)对各种数据结构进行的运算。
数据:是对客观事物的符号表示,在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称。
数据元素:是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。外语学习网
数据对象:是性质相同的数据元素的集合,是数据的一个子集。
数据的逻辑结构是对数据元素之间的逻辑关系的描述,它可以用一个数据元素的集合和定义在此集合中的若干关系来表示。数据的逻辑结构有两个要素:一是数据元素的集合,通常记为D;二是D上的关系,它反映了数据元素之间的前后件关系,通常记为R。一个数据结构可以表示成
B=(D,R)
其中B表示数据结构。为了反映D中各数据元素之间的前后件关系,一般用二元组来表示。
数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构(也称数据的物理结构)。
由于数据元素在计算机存储空间中的位置关系可能与逻辑关系不同,因此,为了表示存放在计算机存储空间中的各数据元素之间的逻辑关系(即前后件关系),在数据的存储结构中,不仅要存放各数据元素的信息,还需要存放各数据元素之间的前后件关系的信息。
一种数据的逻辑结构根据需要可以表示成多种存储结构,常用的存储结构有顺序、链接、索引等存储结构。而采用不同的存储结构,其数据处理的效率是不同的。因此,在进行数据处理时,选择合适的存储结构是很重要的。
根据数据结构中各数据元素之间前后件关系的复杂程度,一般将数据结构分为两大类型:线性结构与非线性结构。如果一个非空的数据结构满足下列两个条件:
(1)有且只有一个根结点;
(2)每一个结点最多有一个前件,也最多有一个后件。
则称该数据结构为线性结构。线性结构又称线性表。在一个线性结构中插入或删除任何一个结点后还应是线性结构。如果一个数据结构不是线性结构,则称之为非线性结构。
疑难解答:空的数据结构是线性结构还是非线性结构?
一个空的数据结构究竟是属于线性结构还是属于非线性结构,这要根据具体情况来确定。如果对该数据结构的算法是按线性结构的规则来处理的,则属于线性结构;否则属于非线性结构。
(三)栈与树
1.栈的基本概念
栈是限定只在一端进行插入与删除的.线性表,通常称插入、删除的这一端为栈顶,另一端为栈底。当表中没有元素时称为空栈。栈顶元素总是后插入的元素,从而也是最先被删除的元素;栈底元素总是最先插入的元素,从而也是最后才能被删除的元素。栈是按照先进后出或后进先出的原则组织数据的。
2.栈的顺序存储及其运算
用一维数组S(1∶m)作为栈的顺序存储空间,其中m为最大容量。
在栈的顺序存储空间S(1∶m)中,S(bottom)为栈底元素,S(top)为栈顶元素。top=0表示栈空;top=m表示栈满。
栈的基本运算有三种:入栈、退栈与读栈顶元素。
(1)入栈运算:入栈运算是指在栈顶位置插入一个新元素。首先将栈顶指针加一(即top加1),然后将新元素插入到栈顶指针指向的位置。当栈顶指针已经指向存储空间的最后一个位置时,说明栈空间已满,不可能再进行入栈操作。这种情况称为栈上溢错误。
(2)退栈运算:退栈是指取出栈顶元素并赋给一个指定的变量。首先将栈顶元素(栈顶指针指向的元素)赋给一个指定的变量,然后将栈顶指针减一(即top减1)。当栈顶指针为0时,说明栈空,不可进行退栈操作。这种情况称为栈的下溢错误。
(3)读栈顶元素:读栈顶元素是指将栈顶元素赋给一个指定的变量。这个运算不删除栈顶元素,只是将它赋给一个变量,因此栈顶指针不会改变。当栈顶指针为0时,说明栈空,读不到栈顶元素。
小技巧:栈是按照先进后出或后进先出的原则组织数据,但是出栈方式有多种选择,在考题中经常考查各种不同的出栈方式。
树及二叉树的性质
误区警示:
满二叉树也是完全二叉树,而完全二叉树一般不是满二叉树。应该注意二者的区别。
1、树的基本概念
树(tree)是一种简单的非线性结构。在树结构中,每一个结点只有一个前件,称为父结点,没有前件的结点只有一个,称为树的根结点。每一个结点可以有多个后件,它们称为该结点的子结点。没有后件的结点称为叶子结点。
在树结构中,一个结点所拥有的后件个数称为该结点的度。叶子结点的度为0。在树中,所有结点中的最大的度称为树的度。
2、二叉树及其基本性质
(1)二叉树的定义
二叉树是一种很有用的非线性结构,具有以下两个特点:
①非空二叉树只有一个根结点;
②每一个结点最多有两棵子树,且分别称为该结点的左子树和右子树。
由以上特点可以看出,在二叉树中,每一个结点的度最大为2,即所有子树(左子树或右子树)也均为二叉树,而树结构中的每一个结点的度可以是任意的。另外,二叉树中的每个结点的子树被明显地分为左子树和右子树。在二叉树中,一个结点可以只有左子树而没有右子树,也可以只有右子树而没有左子树。当一个结点既没有左子树也没有右子树时,该结点即为叶子结点。
(2)二叉树的基本性质
二叉树具有以下几个性质:
性质1:在二叉树的第k层上,最多有2k-1(k≥1)个结点;
性质2:深度为m的二叉树最多有2m-1个结点;
性质3:在任意一棵二叉树中,度为0的结点(即叶子结点)总是比度为2的结点多一个。
二叉树的遍历
在遍历二叉树的过程中,一般先遍历左子树,再遍历右子树。在先左后右的原则下,根据访问根结点的次序,二叉树的遍历分为三类:前序遍历、中序遍历和后序遍历。
(1)前序遍历:先访问根结点、然后遍历左子树,最后遍历右子树;并且,在遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。
(2)中序遍历:先遍历左子树、然后访问根结点,最后遍历右子树;并且,在遍历左、右子树时,仍然先遍历左子树,然后访问根结点,最后遍历右子树。
(3)后序遍历:先遍历左子树、然后遍历右子树,最后访问根结点;并且,在遍历左、右子树时,仍然先遍历左子树,然后遍历右子树,最后访问根结点。
疑难解答:树与二叉树的不同之处是什么?
广域网、局域网 1.将一个部门中的多台计算机组建成局域网可以实现资源共享。在下列有关局域网的叙述中,错误的是______。
A.局域网必须采用TCP/IP协议进行通信
B.局域网一般采用专用的通信线路
C.局域网可以采用的工作模式主要有对等模式和客户/服务器模式
D.构建以太(局域)网时,需使用集线器或交换机等网络设备,一般不需要路由器 2.在下列有关局域网与广域网的叙述中,错误的是__。
A.一般来说,局域网采用专用的传输介质,而广域网采用公用的通信介质
B.一般来说,局域网采用广播方式进行信息的传输,而广域网采用点对点的方式进行传输
C.局域网可以采用无线信道进行组网,而广域网不可能采用无线信道进行信息的传输
D.因特网是一种典型的广域网,它的联网基础是TCP/IP协议
3.在下列有关最常见局域网、网络设备以及相关技术的叙述中,错误的是____。
A.以太网是最常用的一种局域网,它采用总线结构
B.每个以太网网卡的介质访问地址(MAC地址)是全球惟一的 C.无线局域网一般采用无线电波或红外线进行数据通信
D.“蓝牙”是一种远(近)距离无线通信的技术标准,适用于山区住户组建局域网
4.针对构建一个校园网/企业网,下列有关网络传输介质的叙述中正确的是____。
A.多模(有杂质)光纤的性能比单模(质量比较好,价格高)光纤差
B.无屏蔽双绞线(易受干扰)支持的数据传送距离比屏蔽双绞线远 C.在无中继设备时双绞线的传输距离比同轴电缆长 D.电话线是性能价格比最好的传输介质
5.在组建局域网时,一般都需要集线器、交换机之类的网络设备。下列有关网络设备的叙述中,错误的是____。
A.集线器分为共享式集线器和交换式集线器。
B.网络交换机就是电话系统中的程控交换机。
C.数据传输率是集线器和交换机的重要的性能指标。
D.与共享式集线器相比,一般来说交换机的功能更强、性能更好、价格更贵。
6.计算机网络中各个组成部分相互通信时都必须都必须认同的一套规则成为网络协议。在下列英文缩写中,____不是网络协议。
A.HTTP
B.TCP/IP
C.FTP
D. 是“江苏省高等学校计算机等级考试中心”的网址。其中,“ http ”是指_______。A.超文本传输协议 B.文件传输协议 C.计算机主机域名 D.TCP/IP 协议
8.TCP/IP与OSI/RM 有不少差别:TCP(传输控制协议)/IP(网络协议)分为三个层次,而 OSI/RM分为七个层次。其中,TCP/IP中的IP相当于OSI中的____。
A.应用层
B.网络层 C.物理层 D.传输层 B.Intranet(内联网)C.Internet D.9.企业内部网是采用TCP/IP技术,集LAN、WAN和数据服务为一体的网络,它也称为______。
A.局域网
广域网
10.局域网按其拓扑结构可以分为多种类型,目前较为流行的以太网从逻辑上看应属于______。
A.星型网 B.环行网
C.总线网 D.混合网
11.目前较为流行的局域网是采用集线器和双绞线组成的网。从逻辑上(即访问控制方式上)看,这种网的拓扑结构应属于____。
A.环形网 B.星形网
C.总线网 D.树形网
D.光缆 12.在计算机网络中,目前不用中继设备时,传输距离最远的传输介质是______。
A.双绞线 B.同轴电缆 C.红外线
19.在构建网络时,需要使用多种网络设备,如网卡、交换机等。如果要将多个独立的子网互连,如局域网与广域网互连,应当用_______进行连接。
A.集线器
B.路由器 C.交换机 D.调制解调器
20.构建不同的网络需要选择不同的网络设备。在构建局域网时,一般不需要_____。
提起函数,一大波同学已经跪倒。Word、Excel、PPT,Excel最难,Excel难就难在函数上,分分钟让人窒息。无忧考吧汇总了部分函数知识点,希望对大家函数提升有所帮助。
需要注意的事项:
1、书写函数公式时单元格格式一定不能是文本
2、函数三要素:等号、函数名和参数
3、函数公式中的标点一定是英文标点
4、参与计算的单元格中的值一定是数字格式——不能是文本,也不能有空格或不可见字符
5、excel自带语法查错功能,当输入公式报错时,仔细检查书写不规范
► SUM求和函数
定义:计算单元格中所有数字的和
语法:=SUM(数据区域)
► AVERAGE平均值函数
定义:计算单元格中所有数字的平均值
语法:=AVERAGE(数据区域)
► RANK.EQ排名函数
定义:返回一列数字的数字排位。如果多个值具有相同的排位,则返回该组值的最高排位
语法:= RANK.EQ (排名的数值,排名的数值区域,升序或降序)
注意事项:
公式填充时,第二参数需要绝对引用$
第三参数是0是从大到小排序,1是从小到大排序,默认一般用0或忽略不写
条件平均值函数
► AVERAGEIF 单条件平均值函数
定义:符合条件的单元格平均值
语法:=AVERAGEIF(条件区域,条件,平均值区域)
题目要求:计算不同职称的平均工资
注意:公式在下拉填充时,职称区域和基本工资数据区域需要绝对引用$
► AVERAGEIFS 多条件平均值函数
定义:符合条件的单元格平均值
语法:=AVERAGEIFS(平均值区域,条件区域1,条件1,条件区域2,条件2,……)
题目要求:计算不同性别不同职称的平均工资
注意:公式在下拉填充时,职称区域和基本工资数据区域需要绝对引用$
► IF条件函数
定义:不同情况下单元格返回不同的值
语法:= IF (条件,真,假)
题目要求:成绩<90显示及格,成绩>=90显示优秀。
嵌套的语法:=IF(条件1,真, if(条件2,真, if(条件3,真, if(条件n,真,假))))
题目要求:成绩<60显示不及格,成绩在60-80间显示良好,成绩>80显示优秀。
注意事项:
返回的值为文本时需要加英文状态下的双引号””
条件计数函数
►单条件计数函数Countif
定义:符合条件的单元格计数
语法:=COUNTIF(计数区域,计数条件)
题目要求:收入在8500以上的人数
注意事项:
条件是以数字、表达式或文本,这边的表达式和文本需要添加英文双引号
►多条件计数函数 Countifs
定义:符合条件的单元格计数
语法:=COUNTIFS(计数区域1,计数条件1, 计数区域2,计数条件2,……)
题目要求:男性收入在8500以上的人数
条件求和函数
► Sumif 单条件求和
定义:符合条件的单元格求和
语法:=SUMIF(条件区域,条件,实际求和区域),当省略第3参数的时候,条件区域即为实际求和区域
题目要求:男性收入总计
► Sumifs多条件求和
定义:符合多个条件的单元格求和
语法:=SUMIFS(实际求和区域,求和条件区域1,求和条件1,求和条件区域2,求和条件 2,……)
题目要求:男性工程师收入总和
特别提醒:
1、sumif和sumifs函数的参数并不是通用的,为了避免出错,无论是单条件还是多条件求和都推荐使用sumifs函数;
2、在sumifs函数和countifs函数中,求和区域与条件区域的行数一定要对应相同。
查询函数
► Vlookup查找函数
定义:根据条件查找相对应的值
语法:=VLOOKUP(要查找的值,要查找的区域,返回数据在查找区域的第几列,精确匹配/近似匹配)
题目要求:根据B11:C20单元格的图书名称对应的定价,将单价填写到B2:B8单元格中
公式=VLOOKUP(A2,$B$12:$C$20,2,0)
注意事项:
1、第二参数需要绝对引用$,且查找区域需要是以查找值为起始列的区域
2、第4参数使用绝对匹配0、false或省略
说在最后,关于函数的使用说明,大家可以利用excel自带的帮助文件来学习
1). 最早的应用领域是
A.信息处理
B.科学计算
C.过程控制
D.人工智能
正确答案:B
答案解析:当初,世界上第一台电子数字计算机ENIAC的研制目的是为了进行火炮的弹道计算,可见,电子计算机的最初应用主要是科学计算,由于计算机的通用性,对科学技术的发展影响非常深远。
2). 自然码汉字输入法的编码属于
A.音码
B.音形码
C.区位码
D.形码
正确答案:B
答案解析:自然码以拼音为主,辅以字形字义进行编码,称为音形码。
3). 最早的应用领域是
A.信息处理
B.科学计算
C.过程控制
D.人工智能
正确答案:B
答案解析:当初,世界上第一台电子数字计算机ENIAC的研制目的是为了进行火炮的弹道计算,可见,电子计算机的最初应用主要是科学计算,由于计算机的通用性,对科学技术的发展影响非常深远。
4). 设已知一汉字的国标码是5E48H,则其内码应该是
A.DE48H
B.DEC8H
C.5EC8H
D.7E68H
正确答案:B
答案解析:汉字交换码(国标码)的两个字节分别加80H得到对应的机内码。国标码+8080H-机内码。
5). 计算机系统由( )两大部分组成。
A.系统软件和应用软件
B.主机和外部设备
C.硬件系统和软件系统
D.输入设备和输出设备
正确答案:C
答案解析:硬件系统和软件系统是计算机系统两大组成部分。输入设备和输出设备、主机和外部设备属于硬件系统。系统软件和应用软件属于软件系统。
[
第一章数据结构与算法
1.1 算法
算法:是指解题方案的准确而完整的描述。
算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。
算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。特征包括:
(1)可行性;
(2)确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性;
(3)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义;
(4)拥有足够的情报。
算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。
指令系统:一个计算机系统能执行的所有指令的集合。
基本运算和操作包括:算术运算、逻辑运算、关系运算、数据传输。
算法的控制结构:顺序结构、选择结构、循环结构。
算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。
算法复杂度:算法时间复杂度和算法空间复杂度。
算法时间复杂度是指执行算法所需要的计算工作量。
算法空间复杂度是指执行这个算法所需要的内存空间。
1.2 数据结构的基本基本概念
数据结构研究的三个方面:
(1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;
(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;
(3)对各种数据结构进行的运算。
数据结构是指相互有关联的数据元素的集合。
数据的逻辑结构包含:
(1)表示数据元素的信息;
(2)表示各数据元素之间的前后件关系。
数据的存储结构有顺序、链接、索引等。
线性结构条件:
(1)有且只有一个根结点;
(2)每一个结点最多有一个前件,也最多有一个后件。
非线性结构:不满足线性结构条件的数据结构。
1.3 线性表及其顺序存储结构
线性表由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。
在复杂线性表中,由若干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件。
非空线性表的结构特征:
(1)有且只有一个根结点a1,它无前件;
(2)有且只有一个终端结点an,它无后件;
(3)除根结点与终端结点外,其他所有结点有且只有一个前件,也有且只有一个后件。结点个数n称为线性表的长度,当n=0时,称为空表。
线性表的顺序存储结构具有以下两个基本特点:
(1)线性表中所有元素的所占的存储空间是连续的;
(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。
ai的存储地址为:ADR(ai)=ADR(a1)+(i-1)k,,ADR(a1)为第一个元素的地址,k代表每个元素占的字节数。
顺序表的运算:插入、删除。(详见14--16页)
1.4 栈和队列
栈是限定在一端进行插入与删除的线性表,允许插入与删除的一端称为栈顶,不允许插入与删除的另一端称为栈底。
栈按照“先进后出”(FILO)或“后进先出”(LIFO)组织数据,栈具有记忆作用。用top表示栈顶位置,用bottom表示栈底。
栈的基本运算:(1)插入元素称为入栈运算;(2)删除元素称为退栈运算;(3)读栈顶元素是将栈顶元素赋给一个指定的变量,此时指针无变化。
队列是指允许在一端(队尾)进入插入,而在另一端(队头)进行删除的线性表。Rear指针指向队尾,front指针指向队头。
队列是“先进先出”(FIFO)或“后进后出”(LILO)的线性表。
队列运算包括(1)入队运算:从队尾插入一个元素;(2)退队运算:从队头删除一个元素。
循环队列:s=0表示队列空,s=1且front=rear表示队列满
1.5 线性链表
数据结构中的每一个结点对应于一个存储单元,这种存储单元称为存储结点,简称结点。
结点由两部分组成:(1)用于存储数据元素值,称为数据域;(2)用于存放指针,称为指针域,用于指向前一个或后一个结点。
在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确定的。
链式存储方式即可用于表示线性结构,也可用于表示非线性结构。
线性链表,HEAD称为头指针,HEAD=NULL(或0)称为空表,如果是两指针:左指针(Llink)指向前件结点,右指针(Rlink)指向后件结点。
线性链表的基本运算:查找、插入、删除。
1.6 树与二叉树
树是一种简单的非线性结构,所有元素之间具有明显的层次特性。
在树结构中,每一个结点只有一个前件,称为父结点,没有前件的结点只有一个,称为树的根结点,简称树的根。每一个结点可以有多个后件,称为该结点的子结点。没有后件的结点称为叶子结点。
在树结构中,一个结点所拥有的后件的个数称为该结点的度,所有结点中最大的度称为树的度。树的最大层次称为树的深度。
二叉树的特点:(1)非空二叉树只有一个根结点;(2)每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。
二叉树的基本性质:
(1)在二叉树的第k层上,最多有2k-1(k≥1)个结点;
(2)深度为m的二叉树最多有2m-1个结点;
(3)度为0的结点(即叶子结点)总是比度为2的结点多一个;
(4)具有n个结点的二叉树,其深度至少为[log2n]+1,其中[log2n]表示取log2n的整数部分;
(5)具有n个结点的完全二叉树的深度为[log2n]+1;
(6)设完全二叉树共有n个结点。如果从根结点开始,按层序(每一层从左到右)用自然数1,2,„.n给结点进行编号(k=1,2„.n),有以下结论:
①若k=1,则该结点为根结点,它没有父结点;若k>1,则该结点的父结点编号为INT(k/2);
②若2k≤n,则编号为k的结点的左子结点编号为2k;否则该结点无左子结点(也无右子结点);
③若2k+1≤n,则编号为k的结点的右子结点编号为2k+1;否则该结点无右子结点。
满二叉树是指除最后一层外,每一层上的所有结点有两个子结点,则k层上有2k-1个结点深度为m的满二叉树有2m-1个结点。
完全二叉树是指除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干结点。
二叉树存储结构采用链式存储结构,对于满二叉树与完全二叉树可以按层序进行顺序存储。
二叉树的遍历:
(1)前序遍历(DLR),首先访问根结点,然后遍历左子树,最后遍历右子树;
(2)中序遍历(LDR),首先遍历左子树,然后访问根结点,最后遍历右子树;
(3)后序遍历(LRD)首先遍历左子树,然后访问遍历右子树,最后访问根结点。
1.7 查找技术
顺序查找的使用情况:
(1)线性表为无序表;
(2)表采用链式存储结构。
二分法查找只适用于顺序存储的有序表,对于长度为n的有序线性表,最坏情况只需比较log2n次。
1.8 排序技术
排序是指将一个无序序列整理成按值非递减顺序排列的有序序列。
交换类排序法:(1)冒泡排序法,需要比较的次数为n(n-1)/2;(2)快速排序法。
插入类排序法:(1)简单插入排序法,最坏情况需要n(n-1)/2次比较;(2)希尔排序法,最坏情况需要O(n1.5)次比较。
选择类排序法:(1)简单选择排序法,最坏情况需要n(n-1)/2次比较;(2)堆排序法,最坏情况需要O(nlog2n)次比较。
第二章程序设计基础
2.1 程序设计设计方法和风格
如何形成良好的程序设计风格
1、源程序文档化;
2、数据说明的方法;
3、语句的结构;
4、输入和输出。
注释分序言性注释和功能性注释,语句结构清晰第一、效率第二。
2.2 结构化程序设计
结构化程序设计方法的四条原则是:1.自顶向下;2.逐步求精;3.模块化;4.限制使用goto语句。
结构化程序的基本结构和特点:
(1)顺序结构:一种简单的程序设计,最基本、最常用的结构;
(2)选择结构:又称分支结构,包括简单选择和多分支选择结构,可根据条件,判断应该选择哪一条分支来执行相应的语句序列;
(3)重复结构:又称循环结构,可根据给定条件,判断是否需要重复执行某一相同程序段。
2.3 面向对象的程序设计
面向对象的程序设计:以60年代末挪威奥斯陆大学和挪威计算机中心研制的SIMULA语言为标志。
面向对象方法的优点:
(1)与人类习惯的思维方法一致;
(2)稳定性好;
(3)可重用性好;
(4)易于开发大型软件产品;
(5)可维护性好。
对象是面向对象方法中最基本的概念,可以用来表示客观世界中的任何实体,对象是实体的抽象。
面向对象的程序设计方法中的对象是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位,由一组表示其静态特征的属性和它可执行的一组操作组成。
属性即对象所包含的信息,操作描述了对象执行的功能,操作也称为方法或服务。
对象的基本特点:
(1)标识惟一性;
(2)分类性;
(3)多态性;
(4)封装性;
(5)模块独立性好。
类是指具有共同属性、共同方法的对象的集合。所以类是对象的抽象,对象是对应类的一个实例。
消息是一个实例与另一个实例之间传递的信息。
消息的组成包括(1)接收消息的对象的名称;(2)消息标识符,也称消息名;(3)零个或多个参数。
继承是指能够直接获得已有的性质和特征,而不必重复定义他们。
继承分单继承和多重继承。单继承指一个类只允许有一个父类,多重继承指一个类允许有多个父类。
多态性是指同样的消息被不同的对象接受时可导致完全不同的行动的现象。
第三章软件工程基础
3.1 软件工程基本概念
计算机软件是包括程序、数据及相关文档的完整集合。
软件的特点包括:
(1)软件是一种逻辑实体;
(2)软件的生产与硬件不同,它没有明显的制作过程;
(3)软件在运行、使用期间不存在磨损、老化问题;
(4)软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题;
(5)软件复杂性高,成本昂贵;
(6)软件开发涉及诸多的社会因素。
软件按功能分为应用软件、系统软件、支撑软件(或工具软件)。
软件危机主要表现在成本、质量、生产率等问题。
软件工程是应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序。
软件工程包括3个要素:方法、工具和过程。
软件工程过程是把软件转化为输出的一组彼此相关的资源和活动,包含4种基本活动:
(1)P——软件规格说明;
(2)D——软件开发;
(3)C——软件确认;
(4)A——软件演进。
软件周期:软件产品从提出、实现、使用维护到停止使用退役的过程。
软件生命周期三个阶段:软件定义、软件开发、运行维护,主要活动阶段是:
(1)可行性研究与计划制定;
(2)需求分析;
(3)软件设计;
(4)软件实现;
(5)软件测试;
(6)运行和维护。
软件工程的目标和与原则:
目标:在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品。
基本目标:付出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发软件易于移植;需要较低的费用;能按时完成开发,及时交付使用。
基本原则:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。
软件工程的理论和技术性研究的内容主要包括:软件开发技术和软件工程管理。
软件开发技术包括:软件开发方法学、开发过程、开发工具和软件工程环境。
软件工程管理包括:软件管理学、软件工程经济学、软件心理学等内容。
软件管理学包括人员组织、进度安排、质量保证、配置管理、项目计划等。
软件工程原则包括抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。
3.2 结构化分析方法
结构化方法的核心和基础是结构化程序设计理论。
需求分析方法有(1)结构化需求分析方法;(2)面向对象的分析的方法。
从需求分析建立的模型的特性来分:静态分析和动态分析。
结构化分析方法的实质:着眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。
结构化分析的常用工具
(1)数据流图;(2)数据字典;(3)判定树;(4)判定表。
数据流图:描述数据处理过程的工具,是需求理解的逻辑模型的图形表示,它直接支持系统功能建模。
数据字典:对所有与系统相关的数据元素的一个有组织的列表,以及精确的、严格的定义,使得用户和系统分析员对于输入、输出、存储成分和中间计算结果有共同的理解。
判定树:从问题定义的文字描述中分清哪些是判定的条件,哪些是判定的结论,根据描述材料中的连接词找出判定条件之间的从属关系、并列关系、选择关系,根据它们构造判定树。
判定表:与判定树相似,当数据流图中的加工要依赖于多个逻辑条件的取值,即完成该加工的一组动作是由于某一组条件取值的组合而引发的,使用判定表描述比较适宜。
数据字典是结构化分析的核心。
软件需求规格说明书的特点:
(1)正确性;
(2)无岐义性;
(3)完整性;
(4)可验证性;
(5)一致性;
(6)可理解性;
(7)可追踪性。
3.3 结构化设计方法
软件设计的基本目标是用比较抽象概括的方式确定目标系统如何完成预定的任务,软件设计是确定系统的物理模型。
软件设计是开发阶段最重要的步骤,是将需求准确地转化为完整的软件产品或系统的唯一途径。
从技术观点来看,软件设计包括软件结构设计、数据设计、接口设计、过程设计。
结构设计:定义软件系统各主要部件之间的关系。
数据设计:将分析时创建的模型转化为数据结构的定义。
接口设计:描述软件内部、软件和协作系统之间以及软件与人之间如何通信。
过程设计:把系统结构部件转换成软件的过程描述。
从工程管理角度来看:概要设计和详细设计。
软件设计的一般过程:软件设计是一个迭代的过程;先进行高层次的结构设计;后进行低层次的过程设计;穿插进行数据设计和接口设计。
衡量软件模块独立性使用耦合性和内聚性两个定性的度量标准。
在程序结构中各模块的内聚性越强,则耦合性越弱。优秀软件应高内聚,低耦合。
软件概要设计的基本任务是:
(1)设计软件系统结构;(2)数据结构及数据库设计;
(3)编写概要设计文档;(4)概要设计文档评审。
模块用一个矩形表示,箭头表示模块间的调用关系。
在结构图中还可以用带注释的箭头表示模块调用过程中来回传递的信息。还可用带实心圆的箭头表示传递的是控制信息,空心圆箭心表示传递的是数据。
结构图的基本形式:基本形式、顺序形式、重复形式、选择形式。
结构图有四种模块类型:传入模块、传出模块、变换模块和协调模块。
典型的数据流类型有两种:变换型和事务型。
变换型系统结构图由输入、中心变换、输出三部分组成。
事务型数据流的特点是:接受一项事务,根据事务处理的特点和性质,选择分派一个适当的处理单元,然后给出结果。
详细设计:是为软件结构图中的每一个模块确定实现算法和局部数据结构,用某种选定的表达工具表示算法和数据结构的细节。
常见的过程设计工具有:图形工具(程序流程图)、表格工具(判定表)、语言工具(PDL)。
3.4 软件测试
软件测试定义:使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。
软件测试的目的:发现错误而执行程序的过程。
软件测试方法:静态测试和动态测试。
静态测试包括代码检查、静态结构分析、代码质量度量。不实际运行软件,主要通过人工进行。
动态测试:是基本计算机的测试,主要包括白盒测试方法和黑盒测试方法。
白盒测试:在程序内部进行,主要用于完成软件内部操作的验证。主要方法有逻辑覆盖、基本基路径测试。
黑盒测试:主要诊断功能不对或遗漏、界面错误、数据结构或外部数据库访问错误、性能错误、初始化和终止条件错,用于软件确认。主要方法有等价类划分法、边界值分析法、错误推测法、因果图等。
软件测试过程一般按4个步骤进行:单元测试、集成测试、验收测试(确认测试)和系统测试。
3.5 程序的调试
程序调试的任务是诊断和改正程序中的错误,主要在开发阶段进行。
程序调试的基本步骤:
(1)错误定位;
(2)修改设计和代码,以排除错误;
(3)进行回归测试,防止引进新的错误。
软件调试可分表静态调试和动态调试。静态调试主要是指通过人的思维来分析源程序代码和排错,是主要的设计手段,而动态调试是辅助静态调试。主要调试方法有:
(1)强行排错法;
(2)回溯法;
(3)原因排除法。
4.1 数据库系统的基本概念
数据:实际上就是描述事物的符号记录。
数据的特点:有一定的结构,有型与值之分,如整型、实型、字符型等。而数据的值给出了符合定型的值,如整型值15。
数据库:是数据的集合,具有统一的结构形式并存放于统一的存储介质内,是多种应用数据的集成,并可被各个应用程序共享。
数据库存放数据是按数据所提供的数据模式存放的,具有集成与共享的特点。
数据库管理系统:一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等,是数据库的核心。
数据库管理系统功能:
(1)数据模式定义:即为数据库构建其数据框架;
(2)数据存取的物理构建:为数据模式的物理存取与构建提供有效的存取方法与手段;
(3)数据操纵:为用户使用数据库的数据提供方便,如查询、插入、修改、删除等以及简单的算术运算及统计;
(4)数据的完整性、安生性定义与检查;
(5)数据库的并发控制与故障恢复;
(6)数据的服务:如拷贝、转存、重组、性能监测、分析等。
为完成以上六个功能,数据库管理系统提供以下的数据语言:
(1)数据定义语言:负责数据的模式定义与数据的物理存取构建;
(2)数据操纵语言:负责数据的操纵,如查询与增、删、改等;
(3)数据控制语言:负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等。
数据语言按其使用方式具有两种结构形式:交互式命令(又称自含型或自主型语言)宿主型语言(一般可嵌入某些宿主语言中)。
数据库管理员:对数据库进行规划、设计、维护、监视等的专业管理人员。
数据库系统:由数据库(数据)、数据库管理系统(软件)、数据库管理员(人员)、硬件平台(硬件)、软件平台(软件)五个部分构成的运行实体。
数据库应用系统:由数据库系统、应用软件及应用界面三者组成。
文件系统阶段:提供了简单的数据共享与数据管理能力,但是它无法提供完整的、统一的、管理和数据共享的能力。
层次数据库与网状数据库系统阶段 :为统一与共享数据提供了有力支撑。
关系数据库系统阶段
数据库系统的基本特点:数据的集成性、数据的高共享性与低冗余性、数据独立性(物理独立性与逻辑独立性)、数据统一管理与控制。
数据库系统的三级模式:
(1)概念模式:数据库系统中全局数据逻辑结构的描述,全体用户公共数据视图;
(2)外模式:也称子模式与用户模式。是用户的数据视图,也就是用户所见到的数据模式;
(3)内模式:又称物理模式,它给出了数据库物理存储结构与物理存取方法。
数据库系统的两级映射:
(1)概念模式到内模式的映射;
(2)外模式到概念模式的映射。
4.2 数据模型
数据模型的概念:是数据特征的抽象,从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表与操作提供一个抽象的框架。描述了数据结构、数据操作及数据约束。
E-R模型的基本概念
(1)实体:现实世界中的事物;
(2)属性:事物的特性;
(3)联系:现实世界中事物间的关系。实体集的关系有一对一、一对多、多对多的联系。
E-R模型三个基本概念之间的联接关系:实体是概念世界中的基本单位,属性有属性域,每个实体可取属性域内的值。一个实体的所有属性值叫元组。
E-R模型的图示法:(1)实体集表示法;(2)属性表法;(3)联系表示法。
层次模型的基本结构是树形结构,具有以下特点:
(1)每棵树有且仅有一个无双亲结点,称为根;
(2)树中除根外所有结点有且仅有一个双亲。
从图论上看,网状模型是一个不加任何条件限制的无向图。
关系模型采用二维表来表示,简称表,由表框架及表的元组组成。一个二维表就是一个关系。
在二维表中凡能唯一标识元组的最小属性称为键或码。从所有侯选健中选取一个作为用户使用的键称主键。表A中的某属性是某表B的键,则称该属性集为A的外键或外码。
关系中的数据约束:
(1)实体完整性约束:约束关系的主键中属性值不能为空值;
(2)参照完全性约束:是关系之间的基本约束;
(3)用户定义的完整性约束:它反映了具体应用中数据的语义要求。
4.3关系代数
关系数据库系统的特点之一是它建立在数据理论的基础之上,有很多数据理论可以表示关系模型的数据操作,其中最为著名的是关系代数与关系演算。
关系模型的基本运算:
(1)插入(2)删除(3)修改(4)查询(包括投影、选择、笛卡尔积运算)
4.4 数据库设计与管理
数据库设计是数据应用的核心。
数据库设计的两种方法:
(1)面向数据:以信息需求为主,兼顾处理需求;
(2)面向过程:以处理需求为主,兼顾信息需求。
数据库的生命周期:需求分析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段、编码阶段、测试阶段、运行阶段、进一步修改阶段。
需求分析常用结构析方法和面向对象的方法。结构化分析(简称SA)方法用自顶向下、逐层分解的方式分析系统。用数据流图表达数据和处理过程的关系。对数据库设计来讲,数据字典是进行详细的数据收集和数据分析所获得的主要结果。
数据字典是各类数据描述的集合,包括5个部分:数据项、数据结构、数据流(可以是数据项,也可以是数据结构)、数据存储、处理过程。
数据库概念设计的目的是分析数据内在语义关系。设计的方法有两种
(1)集中式模式设计法(适用于小型或并不复杂的单位或部门);
(2)视图集成设计法。
设计方法:E-R模型与视图集成。
视图设计一般有三种设计次序:自顶向下、由底向上、由内向外。
视图集成的几种冲突:命名冲突、概念冲突、域冲突、约束冲突。
关系视图设计:关系视图的设计又称外模式设计。
关系视图的主要作用:
(1)提供数据逻辑独立性;
(2)能适应用户对数据的不同需求;
(3)有一定数据保密功能。
数据库的物理设计主要目标是对数据内部物理结构作调整并选择合理的存取路径,以提高数据库访问速度有效利用存储空间。一般RDBMS中留给用户参与物理设计的内容大致有索引设计、集成簇设计和分区设计。
数据库管理的内容:
(1)数据库的建立;
(2)数据库的调整;
(3)数据库的重组;
(4)数据库安全性与完整性控制;
(5)数据库的故障恢复;
【计算机二级ms基础知识】推荐阅读:
计算机二级公共知识点11-01
计算机二级考试C语言知识点总结09-13
9月全国计算机等级考试一级MS模拟试题七(带答案)07-09
计算机二级试卷c语言07-25
计算机二级选择题大全12-14
江苏省计算机二级考试12-20
国家计算机二级ACCESS函数总结12-03
计算机二级考试:VB冲刺试题及答案09-13
全国计算机二级VB考点解析:第一章11-02