c语言公共基础知识
c语言公共基础知识

公共基础知识总结第一章数据结构与算法1.1算法1.2数据结构的基本基本概念(1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;线性结构条件:(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。
非线性结构:不满足线性结构条件的数据结构。
1. 3线性表及其顺序存储结构线性表是由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。
线性表的顺序存储结构具有以下两个基本特点:(1)线性表中所有元素的所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。
1. 4栈和队列栈是限定在一端进行插入与删除的线性表。
1、先进后出FILO;1、支持子程序调用;2、具有记忆功能;3、可以不用顺序存放数据;4、只能够在top首部进行操作,bottom是绝对不动的;5、栈的存放数据的个数为num = (bottom - top ) +1 ;队列是指允许在一端(队尾)进入插入,而在另一端(队头)进行删除的线性表。
1、R ear指针指向队尾,front指针指向队头。
3、先进先出FIFO,或者是后进后出LILO2、循环队列里面的个数计算方法:A、rear > front 的时候,num = rear - front ;B、rear < front 的时候,num = rear + n —front ;1. 5线性链表在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确定的。
链式存储方式即可用于表示线性结构,也可用于表示非线性结构。
1. 6树与二叉树在树结构中,一个结点所拥有的后件的个数称为该结点的度,所有结点中最大的度称为树的度。
树的最大层次称为树的深度。
二叉树的特点:(1)非空二叉树只有一个根结点;(2)每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。
C语言公共基础知识部分整合

C语言公共基础知识部分整合1.在最坏情况下,冒泡排序和简单插入排序、快速排序的比较次数均为n(n-1)/2.2.影响模块之间耦合的主要因素有两个:一是模块之间的连接形式,二是模块接口的复杂性。
接口复杂的模块,耦合程度高。
耦合程度弱的模块,内聚程度高.3.数据库概念设计中由分散到集中的设计方法是:视图集成设计.4.结构化分析方法中,数据字典(是结构化分析方法的核心)的作用是:描述系统中所用到的全部数据和文件的有关信息.5.投影、选择、连接是从二维表的列的方向来进行运算的。
6.数据处理的最小单位是:数据项.若干数据项组合成数据元素.7.进行字符数组赋值时注意给字符串赋值时要加上串接标志。
8.程序流程图中带有箭头的线段表示的是:控制流.矩形表示加工、菱形表示逻辑条件。
9.结构化程序设计的原则有:自顶向上、逐步求精、模块化、限制使用goto语句.10.软件设计中应遵循的原则是:高内聚低耦合.(划分模块独立性就是要求模块间的联系不紧密,故需要高内聚、低耦合)11.算法(特征:可行性、确定性、有穷性、有足够的情报)的有穷性是指:算法程序的运行时间是有限的.(能在有限个步骤后终止)12.将E-R图转化成关系数据模型的过程属于逻辑设计阶段实体以及实体间的联系都是用关系表示的,关系模型中数据的逻辑结构是一张二维表。
13.C语言的注释可以出现在程序的任何位置,一行可以写多个语句,不用语句之间用逗号隔开,程序可以放在多个文件中。
14.两个计算公式:二叉树第i(i>1)层上至多有2^(i-1)个结点,循环队列:队列元素数为|rear-front|15.在软件开发阶段,包括系统设计(概要设计)、详细设计、实现和测试。
16.白盒测试法的原则:至少执行一次模块中每一独立模块。
每一循环都在边界条件下执行一次。
所有判断的每一分支至少执行一次。
黑盒测试:执行边界条件下的所有接口。
17.软件是一种逻辑实体,不是自然界的有形物体。
C语言公共基础知识讲解

第一章数据结构与算法1.1 算法1.1.1算法:是指解题方案的准确而完整的描述。
规定了解决某类问题所需的操作语句以及执行顺序使其能通过有限的指令语句,在一定时间内解决问题算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。
算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。
1.算法特征包括:(1)可行性;(2)确定性,算法中每一步骤都必须有明确定义,不允许有模棱两可的解释,不允许有多义性;(3)有穷性,算法必须能在有限的时间内做完,即能在执行有限的步骤后终止,包括合理的执行时间的含义;(4)拥有足够的情报。
2.算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构通常,计算机可以以执行的基本操作是以指令的形式描述的。
一个计算机系统能执行的所有指令的集合,称为计算机系统的指令系统。
(1)计算机系统中的基本运算和操作包括:算术运算+ - * /逻辑运算not and or关系运算< > ! =数据传输赋值输入与输出(2)算法的控制结构:顺序结构、选择结构、循环结构。
3.算法基本设计方法:列举法(列举所有解决方案)归纳法(特殊→一般)递推(已知→未知)递归(逐层分解)减半递推“减半”是指将问题的规模减半,而问题的性质不为,所谓“递推”是指重复“减半”的过程回溯法找出一个解决问题的线索,然后沿着这个线索逐步多次“探、试”1.1.2算法复杂度算法时间复杂度和算法空间复杂度(一个算法所要付出的代价)是衡理算法好坏的。
1.算法时间复杂度算法时间复杂度是指执行算法所需要的计算工作量。
(既算法的运算次数)含义:算法执行过程中所需要的基本运算次数影响计算工作量的主要因素:一、基本运算次数二、问题与规模2.算法空间复杂度是指执行这个算法所需要的内存空间。
一个算法所用的内存空间包括:1、算法程序所占的空间2、输入的初始数据所占的存储空间3、算法执行过程中的额外空间1.2 数据结构的基本基本概念数据:在计算机科学中指所有能输入到计算机中的并被计算机程序处理的符号的总称数据元素:数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。
C语言公共基础知识知识点(自己整理)

第一章数据结构与算法1.算法的基本特征:可行性,确定性,有穷性,拥有足够的情报。
2.算法的有穷性是指算法程序的运行时间是有限的。
3.算法的时间复杂度:执行算法所需要的计算工作量(基本运算次数)。
算法的空间复杂度:这个算法所需要的内存空间。
两者之间没有必然直接的联系4.程序执行的效率与数据的存储结构、数据的逻辑结构、程序的控制结构、所处理的数据量等有关。
5.线性结构的两大条件:有且只有一个根节点;每一个结点最多只有一个前件,也最多有一个后件。
6.线性表的顺序存储结构具备如下两个基本特征:(1)线性表中的所有元素所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。
7.栈是先进后出的线性表。
8.队列是先进先出的线性表。
9.栈和队列都是线性结构。
10.栈顶元素总是后被插入的元素,从而也是最先被删除的元素;栈底元素总是最先被插入的元素,从而也是最后才能被删除的元素。
11.循环队列中元素的个数是由队头指针和队尾指针共同决定。
12.树是简单的非线性结构,所以二叉树作为树的一种也是一种非线性结构。
13.循环队列中的元素个数随队头指针与队尾指针的变化而动态变化。
14.由于入队时尾指针向前追赶头指针,出队时头指针向前追赶尾指针,故队空和队满时,头尾指针均相等。
15.在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化。
16.循环队列是队列的一种顺序存储结构。
17.循环链表和双向链表都是线性结构。
18.线性链表中数据的插入和删除都不需要移动表中的元素,只需改变结点的指针域即可。
19.线性链表中的各数据结点的存储空间可以不连续,各数据元素的存储顺序与逻辑顺序可以不一致。
20.链式存储结构既可以针对线性结构也可以针对非线性结构。
21.顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的。
22.线性表(线性结构)的链式存储结构所需要的存储空间一般要多于顺序存储结构。
23.栈支持子程序调用。
C语言公共基础知识集合

9.C语句必须以分号结束。复合语句在语法上被看作一条语句。频繁地使用空语句会降低程序的可读性和运算速度。赋值表达式末尾加分号就构成了赋值语句。
27.C语言运行时,首先系统检查语法的正误,在运行程序的方法。c语言中,可以在一个函数中嵌套一个函数,但是不能再一个函数中定义一个函数。只有在函数外部定义的函数才是外部函数。
28.在c语言中,标识符是由字母数字下划线组成的,其中开头必须是字母或下划线。还规定标识符不能为c语言的关键字。
29.结构化分析方法是面向数据流进行分析的方法,采用自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为只要工具,建立系统的逻辑模型。
55.数据库管理系统是数据系统的核心。数据库技术的根本目标是解决数据共享问题。数据库中存储的基本对象是数据。
56.数据管理技术的发展经历了三个阶段:人工管理阶段、文件系统阶段、数据库系统阶段。
57.数据库系统管理的特点:大规模管理、大容量磁盘、有数据库管理系统、分布处理联机实时处理和批处理、共享性大、冗余度小、具有高度的物理独立性和一定得逻辑独立性。
48.软件设计中应该遵循的基本原理:抽象、模块化、信息隐蔽、模块独立性。
49.衡量软件模块独立性使用耦合性和内聚性两个定性的度量标准。内聚性是度量一个模块功能强度的一个相对指标,描述的似乎模块内的功能联系。耦合性是模块之间互相连接的紧密程度的度量,耦合性取决于各个模块之间接口的复杂度。在程序结构中,各模块的内聚性越强,则耦合性越弱,应尽量做到高内聚和低耦合。
全国计算机二级C语言公共基础知识

选择合适的数据结构和算 法
合理使用数组、链表、哈希表 等数据结构,以及快速排序、 二分查找等算法,可以提高代 码效率和性能。
减少函数调用
过多的函数调用会增加时间复 杂度,可以通过减少函数调用 或使用内联函数来提高性能。
避免重复计算
将重复计算的结果存储在变量 中,避免每次需要时重新计算 。
使用缓存技术
指针的运算
指针可以进行加法、减法、比较等运 算,以方便对数组元素的访问和操作。
指针的声明与初始化
指针变量需要先声明类型,再通过赋 值操作符将变量的地址赋值给指针。
指针与数组
通过指针可以方便地访问数组元素, 例如使用指针遍历数组、访问数组元 素等。
结构体与联合体
结构体的概念
结构体是一种自定义数据类型,可以 包含多个不同类型的数据成员。
1973-1978年
C语言逐渐成熟,成为UNIX操作系统的主要编程语 言。
1978-至今
C语言成为计算机领域中最广泛使用的编程语言之一 ,广泛应用于系统软件、应用软件、嵌入式系统等 领域。
C语言的特点
01
02
03
04
高效
C语言是一种低级语言,能够 直接代码清晰易 懂,易于学习和使用。
结构化
C语言采用结构化的程序设计 方法,强调代码的模块化和组 织结构,提高了代码的可读性 和可维护性。
可移植性
C语言的标准规范统一,在不 同的操作系统和硬件平台上具 有良好的可移植性。
C语言的应用领域
系统软件
操作系统、编译器、数据库等系统软件主要使用 C语言进行开发。
嵌入式系统
C语言在嵌入式系统中应用广泛,如智能家居、 智能硬件等领域。
结构体的声明与初始化
C语言公共基础知识.doc

B.算法 的空间复杂度是指(1) 下面叙述正确的是(c) A. 算法的执行效率与数据的存储结构无关法程序中指令(或语句)的条数C.算法的有穷性是指算法必须能在执行有限个步骤之后终 止D. 以上三种描述都不对 (2) 以下数据结构中不属于线 性数据结构的是(C)A. 队列B.线性表C.二叉 树D.栈 (3) 在一棵二叉树上第5层的 结点数最多是(B)(注:由公 式2k-1得)A. 8B. 16C. 32D.(4) 下面描述中,符合结构化 程序设计风格的是(A)A. 使用顺序、选择和重复(循 环)三种基本控制结构表示程 序的控制逻辑B. 模块只有一个入口,可以有多个岀口C. 注重提高程序的执行效率D.不使用goto 语句(5) 下面概念中,不属于面向 对象方法的是(D)注:P55-58A.对象B.继承C.类D.过程调用(6) 在结构化方法中,用数据 流程图(DFD)作为描述工具的 软件开发阶段是(B)A.可行性分析B.需求分析C.详细设计D.程序编码(7)在软件开发中,下面任务不属于设计阶段的是(D)A.数据结构设计B.给出系统模块结构C.定义模块算法D.定义需求并建立系统模型(8)数据库系统的核心是(B)A.数据模型B.数据库管理系统C.软件工具D.数据库(9)下列叙述中正确的是(C)A.数据库是一个独立的系统,不需要操作系统的支持B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题D.数据库系统中,数据的物理结构必须与逻辑结构一致(10)下列模式中,能够给出数据库物理存储结构与物理存取方法的是(A)注:P108A.内模式B.外模式C.概念模式D.逻辑模式(11)算法的时间复杂度是指(C)A.执行算法程序所需要的时间B.算法程序的长度C.算法执行过程中所需要的基本运算次数D.算法程序中的指令条数(12)算法的空间复杂度是指(D)A.算法程序的长度B.算法程序中的指令条数C.算法程序所占的存储空间D.算法执行过程中所需要的存储空间仃3)设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B)[注:利用公式n=n0+nl+n2、n0=n2+l 和完全二叉数的特点可求出]A. 349B. 350C. 255D. 351(14)结构化程序设计主要强调的是(B)A.程序的规模B.程序的易读性C.程序的执行效率D.程序的可移植性(15)在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(D)注:即第一个阶段A.概要设计B.详细设计C. 可行性分析D.需求分析(16)数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。
c语言公共基础

1.结构化程序设计主要原则是;自顶向下、逐步求精,模块化,限制使用got语句;结构化程序设计方法;自底向下,逐步求精,从整体到局部,结构清晰,层次分明。
2.数据字典编制中,常用定义方式描述数据结构3.c语言基本概念;c语言区分大小写;变量在内存中占据一定的存储单元,可修改。
整数可以准确表示,实数不可;正整数可用二、十、八、十六进制表示4.算法有5个特性;可行性,确定性,有穷性,拥有足够的情报5.c语言必须以分号结束。
复合语句在语法上被看作一条语句;赋值表达式末尾加分号就构成赋值语句。
6.c语言各个数据类型所占内存是由所用机器字长决定,不同机器字长,同一数据类型占的内存也不一样7.逗号表达式:最后一个表达式的值就是此逗号表达式的值。
赋值表达式的左侧只能是变量,不能是常量或表达式,例如:x+1=y; x=x+10= x +y都是错的。
8.(类型名)(表达式),其中(类型名)称为强制类型转换运算符,数据类型两边的圆括号不能省去,例如:double(x)/10是错误的,应为(double)(x/10)9.一个c语言无能包括多少函数,在正常情况下总是从main函数开始执行,从main 函数结束10.“\b”格式表示退格,功能是将他后面的字母把它前面的字母覆盖,导致“\b”前面的字母不能输出,“\”格式符表示输出单引号,“\\”格式符表示反斜线字符11.c语言的字符型数据并不是将该字符本身存储到内存中,而是将该字符对应的ASCII码存储到内存单元中;原码;最高位0表示正,1为负,其余各位表示数本身;反码;是对原码除符号位以外的各位按位取反得到的数;补码;正数的补码和其原码相同,负数的补码最高位为1其余各位在原码基础上按位取反,然后在最低位加1得到12.实参将其值传递给形参,调用结束时形参并不将其值回传给实参13.在函数定义时,由于函数没有说明其类型,系统默认整型处理14.若二维数组a有m列,则在a【i】【j】前的元素个数为i*m+j15.使用宏替换可以嵌套;宏定义仅仅是符号替换;双引号中出现的宏名不替换16.使用fgets(str,n,fp)函数;1、字符串读入后会自动加入\0;2、fp是指向该文件的文件型指针;3、fgets函数将从文件中最多读入n-1个字符17.算法基本特性包括:可靠性、确定性、又穷性、拥有足够的空间18.栈是限定在表的一端进行插入和删除的线性表。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
公共基础知识总结第一章数据结构与算法1.1 算法1.2 数据结构的基本基本概念(1(2线性结构条件:(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。
非线性结构:不满足线性结构条件的数据结构。
1.3 线性表及其顺序存储结构线性表的顺序存储结构具有以下两个基本特点:(1)线性表中所有元素的所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。
1.4 栈和队列1、先进后出 FILO;1、支持子程序调用;2、具有记忆功能;3、可以不用顺序存放数据;4、只能够在top首部进行操作,bottom是绝对不动的;5、栈的存放数据的个数为 num = (bottom – top)+1;1、Rear指针指向队尾,front指针指向队头。
3、先进先出FIFO,或者是后进后出LILO2、循环队列里面的个数计算方法:A、rear > front 的时候, num = rear – front;B、rear < front 的时候, num = rear + n – front;1.5 线性链表在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确定的。
链式存储方式即可用于表示线性结构,也可用于表示非线性结构。
1.6 树与二叉树在树结构中,一个结点所拥有的后件的个数称为该结点的度,所有结点中最大的度称为树的度。
树的最大层次称为树的深度。
子树。
二叉树的基本性质:必考的题目(1)在二叉树的第k层上,最多有2k-1(k≥1)个结点;(2)深度为m的二叉树最多有2m-1个结点;(3)度为0的结点(即叶子结点)总是比度为2的结点多一个;(4)二叉树中 n = n0 +n1 +n2每一层上的所有结点有两个子结点,则k层上有2k-1个结点深度为m的满二叉树有2m-1个结点。
二叉树的遍历:(一般画个图要你把顺序写出来)1.7 查找技术顺序查找的使用情况:长度为n的线性表,找出一个数据,最差的情况为比较n 次。
长度为n的线性表,找出一个最大数据,最差的情况为比较n-1 次。
二分查找:对于长度为n的有序线性表,最坏情况只需比较1.8 排序技术排序是指将一个无序序列整理成按值非递减顺序排列的有序序列。
交换类排序法:(1)冒泡排序法,需要比较的次数为(2)快速排序法,需要比较的次数为。
插入类排序法:(1)简单插入排序法,最坏情况需要(2)希尔排序法,最坏情况需要选择类排序法:(1)简单选择排序法, 最坏情况需要(2)堆排序法,最坏情况需要第二章程序设计基础2.1 程序设计设计方法和风格程序设计方法有两种,结构化程序设计和面向对象程序设计。
2.2 结构化程序设计结构化程序设计方法的四条原则是:考试重点都要背下来1.自顶向下;2. 逐步求精;3.模块化;4.限制使用goto语句。
注意,这四个特点中,最重要的是模块化。
结构化程序的基本结构和特点:顺序结构\选择结构\循环结构2.3 面向对象的程序设计面向对象的程序设计:以对象为核心。
面向对象具备哪些基本概念:对象、类和实例、消息、继承、多态性、面向对象的程序设计方法中的对象是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位,由一组表示其静态特征的属性和它可执行的一组操作组成。
对象的基本特点:(1)标识惟一性;(2)分类性;(3)多态性;重点(4)封装性;重点(5)模块独立性好。
消息的组成包括:(1)接收消息的对象的名称;(2)消息标识符,也称消息名;(3)零个或多个参数。
继承分单继承和多重继承。
对象也可以没有继承。
1、单继承指一个类只允许有一个父类,2、多重继承指一个类允许有多个父类。
第三章软件工程基础3.1 软件工程基本概念软件的特点包括:(1)软件是一种逻辑实体;(2)软件的生产与硬件不同,它没有明显的制作过程;(3)软件在运行、使用期间不存在磨损、老化问题;(4)软件的开发、运行对计算机系统具有依赖性,(5)软件复杂性高,成本昂贵;(6)软件开发涉及诸多的社会因素。
1、数据库管理系统是系统软件。
2、教务处管理系统是应用软件。
软件危机主要表现在成本、质量、生产率等问题。
软件工程包括3个要素:方法、工具、过程。
方法:完成软件工程项目的技术手段。
工具:支持软件的开发、管理、文档生成。
过程:支持软件开发的各个环节的控制、管理。
主要活动阶段是:需求分析,详细设计和概要设计是开发阶段。
3.2 结构化分析方法需求分析方法有(1需求分析阶段工作4个方面:结构化分析的常用工具:(1(2(3(4数据流图:描述数据处理过程的工具,是需求理解的逻辑模型的图形表示,它直接支持系统功能建模。
数据字典:对所有与系统相关的数据元素的一个有组织的列表,以及精确的、严格的定义,使得用户和系统分析员对于输入、输出、存储成分和中间计算结果有共同的理解。
软件需求规格说明书的特点:(核心的是无歧义性)(1)正确性;(2)无岐义性;(3)完整性;(4)可验证性;(5)一致性;(6)可理解性;(7)可追踪性。
3.3 结构化设计方法软件设计的基本目标是用比较抽象概括的方式确定目标系统如何完成预定的任务,。
软件设计的一般过程:软件设计是一个迭代的过程;先进行高层次的结构设计;后进行低层次的过程设计;穿插进行数据设计和接口设计。
耦合性:对一个软件结构中不同模块之间互连程度的度量。
内聚性:一个模块内部各个元素间彼此结合的紧密程度的度量。
软件概要设计的基本任务是:(1)设计软件系统结构;(2)数据结构及数据库设计;(3)编写概要设计文档;(4)概要设计文档评审。
常见的过程设计工具有:考试重点程序流程图是考试重点,其中->箭头表示控制流,<>菱形表示逻辑条件。
3.4 软件测试软件测试定义:使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。
软件测试的目的:发现错误而执行程序的过程。
静态测试:包括代码检查、静态结构分析、代码质量度量。
不实际运行软件,主要通过人工进行。
动态测试:是基本计算机的测试,主要包括白盒测试方法和黑盒测试方法。
白盒测试:在程序内部进行,主要用于完成软件内部CAO作的验证。
主要方法有逻辑覆盖、基本基路径测试。
黑盒测试:主要诊断功能不对或遗漏、界面错误、数据结构或外部数据库访问错误、性能错误、初始化和终止条件错,用于软件确认。
软件测试过程一般按4个步骤进行(要背先后顺序):3.5 程序的调试程序调试的任务是诊断和改正程序中的错误,主要在开发阶段进行。
软件调试可分表静态调试和动态调试。
静态调试主要是指通过人的思维来分析源程序代码和排错,是主要的设计手段,动态调试是辅助静态调试。
第四章数据库设计基础4.1 数据库系统的基本概念数据的特点:有一定的结构,有型与值之分,如整型、实型、字符型等。
的具有集成与共享的特点。
护和数据服务等,是数据库的核心。
数据库管理系统提供以下的数据语言:(1)数据定义语言:负责数据的模式定义与数据的物理存取构建;(2)数据操纵语言:负责数据的操纵,如查询与增、删、改等;(3)数据控制语言:负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等。
、数据库管理系统(软件)、数据库管理员(人员)、硬件平台(硬件)、软件平台(软件)五个部分构成的运行实体。
DBS是最大的包括其他所有的。
数据库发展的三个阶段:人工管理阶段、文件系统阶段、数据库管理阶段。
数据库系统阶段的基本特点:1、数据的集成性、2、数据的高共享性与低冗余性、3、数据独立性(物理独立性与逻辑独立性)、数据统一管理与控制。
数据库系统的三级模式:(1)概念模式:数据库系统中全局数据逻辑结构的描述,全体用户公共数据视图;(2)外模式:也称子模式与用户模式。
是用户的数据视图,也就是用户所见到的数据模式;(3)内模式:又称物理模式,它给出了数据库物理存储结构与物理存取方法。
一个数据库只有一个内模式,可以有多个外模式。
数据库系统的两级映射:(1)概念模式到内模式的映射;(2)外模式到概念模式的映射。
4.2 数据模型数据模型的概念:是数据特征的抽象,从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表与操作提供一个抽象的框架。
描述了数据结构、数据操作及数据约束。
E-R模型的基本概念(1(2(3)联系:现实世界中事物间的关系。
实体集的关系有一对一、一对多、多对多的联系。
E-R模型的图示法:(1)实体集表示法;(2)属性表法;(3)联系表示法。
123、元组就是二维表中一行,属性就是二维表表中一列。
45、表A中的某属性是某表B的键,则称该属性集为A6、分量是不可以再分的。
以上六点非常重要。
关系中的数据约束:(1)实体完整性约束:约束关系的主键中属性值不能为空值;(2)参照完全性约束:是关系之间的基本约束;(3)用户定义的完整性约束:它反映了具体应用中数据的语义要求。
4.3关系代数关系模型的基本运算:(1(2(4两个表的运算一般会考到:投影、链接、选择、笛卡尔积、交、并当中的一个。
4.4 数据库设计与管理进一步修改阶段。
SA)方法用自顶向下、逐层分解的方式分析系统。
用数据流图表达数据和处理过程的关系。
对数据库设计来讲,数据字典是进行详细的数据收集和数据分析所获得的主要结果。
5个部分:数据项、数据结构、数据流(可以是数据项,也可以是数据结构)、数据存储、处理过程。
公共基础补充知识点1、一个数据结构的逻辑结构根据需要可以有多个存储结构。
存储结构的不同,会造成处理的效率不同。
2、程序设计方法和技术的发展经过了结构化程序设计和面向对象设计两个阶段。
3、当今程序设计的风格是“清晰第一,效率第二”。
4、程序可以没有输入,但是一定要有输出。
5、结构化程序设计遵循:自顶向下,逐步求精,模块化,限制使用goto语句(常考)。
6、面向对象的基本特点:标志唯一性,分类性,多态性,封装性,模块独立性。
尤其重要的是多态性和封装性。
没有类比性。
7、多态性:统一操作可以是不同对象的行为。
同样的消息被不同的对象接收时可导致不同的动作的现象。
8、封装性:从外面看不到对象的内部,只能看到对象的外部特性。
9、类:是具有共同属性、共同方法的对象的集合。
描述了属于该对象类型的所有对象的性质,而一个对象则是对应类的一个实例。
(常考)10、消息:是指对象间的相互合作的协作机制,是一个对象与另一个对象之间的传递的消息。
11、继承:是指使用已有的类定义作为基础建立新类的定义技术。
继承分为单继承和多继承。
12、面向对象中,类的实例叫做对象。
13、源程序文档化要求程序应该加上注释。
注释一般为序言性注释和功能性注释。