二级C语言基础知识要点
- 格式:docx
- 大小:17.39 KB
- 文档页数:8
千里之行,始于足下。
202X年计算机二级C语言公共基础知识点及考点计算机二级C语言考试是针对C语言编程能力的一种测试,主要考察考生对C语言的基本知识、语法、数据类型、流程控制、函数、数组、指针等方面的掌握程度。
以下是一些公共的基础知识点及考点:1. C语言基础知识- C语言的历史和特点- C语言的编译过程- C语言的注释规则- C语言的标识符和关键字2. 数据类型- 基本数据类型:整型、浮点型、字符型- 枚举类型- 派生数据类型:数组、结构体、共用体、指针3. 运算符和表达式- 算术运算符- 关系运算符- 逻辑运算符- 位运算符- 赋值运算符- 条件运算符4. 控制语句和流程控制- if语句第1页/共2页锲而不舍,金石可镂。
- switch语句- for循环- while循环- do-while循环- break和continue语句5. 数组和字符串- 一维数组的定义和使用- 二维数组的定义和使用- 字符串的定义和操作6. 函数和库函数- 函数的定义和调用- 函数的参数传递- 函数的返回值- 库函数的调用7. 指针和动态内存分配- 指针的定义和使用- 指针与数组的关系- 指针作为函数参数- 动态内存分配:malloc、calloc、realloc、free以上是计算机二级C语言考试的一些公共基础知识点及考点。
考生需要熟练掌握这些知识,并通过练习题和实际编程项目提升实际应用能力。
此外,还建议考生了解编程规范和常见错误,加强编码规范和错误调试能力。
全国计算机二级C语言最重要的知识点总结计算机二级C语言考试是对学生掌握C语言基础知识以及应用能力的综合考试。
以下是全国计算机二级C语言最重要的知识点总结。
一、基础知识点(约占30%)1.基本语法:C语言的基本结构、关键字、标识符、注释等。
2.变量和数据类型:整型、浮点型、字符型、指针等。
3.运算符和表达式:算术运算符、关系运算符、逻辑运算符等。
4.控制语句:条件语句(if-else语句、switch语句)、循环语句(for循环、while循环)、跳转语句(break语句、continue语句)。
5.数组和字符串:一维数组、二维数组、字符数组、字符串处理等。
二、函数(约占20%)1.函数的定义与调用:函数的声明、定义、调用。
2.函数的参数传递:值传递、地址传递。
3.函数的返回值:返回值类型、返回值的使用。
4.递归函数:递归函数的原理与应用。
三、指针(约占15%)1.指针的定义与初始化:指针变量的定义、指针的初始化。
2.指针的运算:指针的加减运算、指针的比较运算。
3.指针和数组:指针与一维、二维数组的关系。
4.指针和函数:指针作为函数的参数、指针作为函数的返回值。
四、文件操作(约占15%)1.文件的打开和关闭:文件的打开模式、文件指针的移动。
2.文件的读写操作:字符的读写、字符串的读写、二进制文件的读写。
3.文件的管理:文件的重命名、删除文件、创建文件夹等。
五、结构体(约占10%)1.结构体的定义:结构体成员的类型和名称。
2.结构体的初始化:结构体变量的初始化、结构体指针的初始化。
3.结构体的访问:点运算符、箭头运算符的使用。
六、动态内存管理(约占10%)1.内存的分配和释放:malloc函数、calloc函数、realloc函数。
2.内存的操作:内存的读写、内存的拷贝。
3.内存泄漏和野指针:内存的释放、野指针的产生和解决方法。
七、综合应用(约占5%)1.数组和字符串处理:冒泡排序、选择排序、字符串操作(拷贝、连接、比较)等。
计算机二级考试C语言知识点总结C语言是一种通用的高级编程语言,广泛应用于计算机科学领域。
它以其简洁的语法、强大的功能和高效的性能而闻名。
对于计算机二级考试而言,掌握C语言的基本知识点至关重要。
下面是对C语言知识点的总结:1. C语言基础:包括变量、常量、数据类型、运算符等。
在C语言中,变量用于存储数据,常量是不会改变的值,数据类型决定了变量或表达式的性质,运算符用于进行各种数学和逻辑运算。
2. 输入和输出:通过scanf()函数从标准输入读取数据,通过printf()函数将数据输出到标准输出。
此外,还有其他用于输入和输出的函数,如gets()、puts()、getchar()等。
3. 控制结构:包括顺序结构、选择结构和循环结构。
顺序结构按照代码的顺序执行,选择结构根据条件选择不同的执行路径,循环结构重复执行一段代码。
4. 数组:是一种存储多个相同类型数据的方式。
通过数组可以访问和修改多个数据。
数组的元素是通过索引进行访问的,索引从0开始。
5. 字符串:是由字符组成的数组。
C语言中使用字符数组来表示字符串。
可以使用字符串函数对字符串进行操作,如strlen()、strcpy()、strcat()等。
6. 函数:是一段可重复使用的代码块。
函数有输入和输出,输入是参数,输出是返回值。
通过函数可以使代码更加模块化和可读性更强。
7. 指针:是存储内存地址的变量。
指针可以指向不同类型的数据,可以通过指针间接访问和修改数据。
使用指针可以提高程序的效率和灵活性。
8. 结构体:是用户自定义的数据类型,可以将不同类型的数据组合在一起。
结构体可以包含基本数据类型、数组、指针等。
通过结构体可以创建更加复杂和有组织的数据类型。
9. 文件操作:可以通过C语言对文件进行读写操作。
通过打开文件、写入数据、读取数据、关闭文件等操作可以实现对文件的控制。
以上是C语言的一些基本知识点。
在计算机二级考试中,考察的内容可能会更加深入和具体。
计算机二级C语言公共基础计算机二级C语言公共基础是计算机类专业学生必须掌握的基础知识。
C语言是一种通用的、过程式的编程语言,广泛应用于操作系统、嵌入式系统、游戏开发等领域。
本文将从C语言的基本语法、数据类型、运算符、控制流、函数等方面,介绍C语言的公共基础知识。
一、基本语法C语言的基本语法主要包括变量声明、注释、标识符等。
变量声明即告诉计算机需要分配内存空间来存储变量的值,语法为:```c数据类型变量名;```其中,数据类型可以是int、float、char等,变量名是自定义的名字。
注释用于解释代码的作用,提高代码的可读性,C语言中有两种注释方式:```c//单行注释/*多行注释*/```标识符是变量、函数、数组等自定义名称,标识符必须以字母或下划线开头,由字母、数字和下划线组成。
二、数据类型C语言支持的数据类型包括基本数据类型和派生数据类型。
基本数据类型有int、float、char、double等,派生数据类型有数组、结构体、指针等。
不同的数据类型在内存中占用的空间大小不同,因此在使用时需要根据需要选择合适的数据类型。
三、运算符C语言提供了一系列的运算符用于进行数值计算和逻辑操作。
常见的运算符有算术运算符(+、-、*、/等)、逻辑运算符(&&!等)、关系运算符(>、<、==、!=等)、赋值运算符(=、+=、-=等)等。
通过组合运算符可以进行复杂的运算操作。
四、控制流控制流用于根据条件来控制程序的执行顺序,主要包括条件语句和循环语句。
条件语句用于判断给定条件是否成立,从而决定执行的代码块,常见的条件语句有if语句和switch语句。
循环语句用于重复执行一段代码,常见的循环语句有while循环、do-while循环和for循环。
掌握条件语句和循环语句可以灵活地控制程序的逻辑流程。
五、函数函数是C语言中的一种封装的机制,通过函数可以对代码进行模块化设计,提高代码的重用性和可读性。
计算机2级c语言C语言是一种通用的高级计算机编程语言,广泛应用于软件开发、嵌入式系统和操作系统等领域。
C语言的特点是简单、高效和可移植,并且在计算机科学教育中有着重要的地位。
在本文中,我们将讨论C语言的2级概念,并展示一些与此级别相关的重要知识点。
在C语言的学习过程中,一般会按照等级进行分级,2级通常是在基础知识的基础上进一步学习更高级的语言特性和编程技巧。
下面是2级C语言需要掌握的几个重要知识点。
1. 结构体和联合体(Structures and Unions):结构体是一种用户自定义的数据类型,可以用来组合不同类型的数据。
联合体与结构体类似,但它只能存储一个成员的值。
结构体和联合体的使用可以使数据更有组织性,方便管理和操作。
2. 动态内存分配(Dynamic Memory Allocation):动态内存分配是通过函数来分配和释放内存,以满足程序在运行时的需要。
在C语言中,使用malloc(函数来分配内存,使用free(函数来释放内存。
了解如何正确地使用动态内存分配是提高程序的效率和性能的重要因素。
3. 文件操作(File Operations):C语言提供了一套用于操作文件的标准库函数,如fopen(、fclose(、fread(和fwrite(等。
文件操作是软件开发中重要的一部分,可以用于读取或写入文件数据,进行文件的复制、重命名和删除等操作。
4. 指针和数组(Pointers and Arrays):指针和数组是C语言中非常重要的概念。
指针是一种变量,存储了内存地址。
数组是一种存储多个相同类型数据的容器。
指针和数组的结合使用可以实现内存的高效管理和访问数据。
5. 位操作(Bitwise Operations):位操作是对二进制数据进行操作的技术。
C语言提供了一些位操作的运算符,如与(&)、或(,)、异或(^)和位移(<<、>>)等。
位操作可以用来处理二进制数据,对图像、音频和视频等数据进行加密和解密等处理。
计算机二级c公共基础知识计算机二级C是国内常见的计算机软件专业资格认证之一,对于想要从事计算机编程或软件开发工作的人来说,具备C语言的基础知识是必要的。
下面将介绍一些计算机二级C的公共基础知识。
一、C语言概述C语言是一种通用的计算机编程语言,由贝尔实验室的Dennis Ritchie于20世纪70年代开发。
它在系统编程和嵌入式系统开发等领域广泛应用。
C语言的特点包括高效性、可移植性和灵活性,使得它成为了许多计算机科学和信息技术领域的主要编程语言之一。
二、C语言的基本语法和数据类型1. 变量和常量:C语言中需要定义变量来存储数据,并可以使用常量来表示固定的值。
变量的定义需要指定数据类型,如int、float、char等。
2. 运算符:C语言支持各种算术运算、逻辑运算和关系运算,并提供了相应的运算符。
3. 控制语句:C语言提供了分支控制语句(if-else、switch)和循环控制语句(for、while、do-while),用于根据条件执行不同的代码块或者循环执行一段代码。
4. 数组:C语言支持定义和操作一维和多维数组,用于存储一系列相同类型的数据。
5. 函数:C语言使用函数来组织代码和实现代码的重用,可以定义自己的函数并在程序中调用。
三、C语言中的指针和内存管理1. 指针:C语言支持指针,指针是一个变量,它存储了内存地址。
通过指针可以访问和修改内存中的数据。
2. 动态内存分配:C语言提供了动态内存分配函数malloc()和free(),可以根据需要在程序运行时动态地申请和释放内存空间。
四、C语言中的文件操作1. 文件的打开和关闭:C语言提供了打开文件的函数fopen()和关闭文件的函数fclose(),通过文件指针可以对文件进行读写操作。
2. 文件的读写:C语言提供了一系列的文件读写函数,如fread()、fwrite()、fgets()、fprintf()等,用于从文件中读取数据或向文件中写入数据。
数组下标的下限是0。
全国计算机二级C语言公共基础知识一、数据结构与算法1、完全二叉树是属于非线性结构,但其最佳存储方式是顺序存储方式2、顺序存储结构中可能根节点不唯一,故可能不是线性结构3、算法的有穷性是指,算法中的操作步骤为有限个,且每个步骤都能在有限时间内完成4、法复杂度包括算法的时间复杂度和算法的空间复杂度。
算法设计必须考虑执行算法所需要的资源,即时间与空间复杂度5、算法的优劣取决于算法复杂度,与程序的环境无关,当算法被编程实现之后,程序的运行受到计算机系统运行环境的限制6、循环队列中,由于指针超过队列地址最大值时会移动到队列最小地址处,所以队头指针可以大于也可以小于队尾指针7、链式存储结构中每个结点都由数据域与指针域两部分组成,增加了存储空间8、循环队列是队列的一种顺序存储结构,用队尾指针rear指向队列中的队尾元素,用排头指针front指向排头元素的前一个位置9、设循环队列为Q(1: m),其初始状态为front=rear=m。
经过一系列入队与退队运算后,front= X,rear= Y。
现要在该循环队列中寻找最大值的元素,最坏情况下需要比较的次数为(1)若X>Y,则次数为m-(Y-X)-1(2)若X<Y,则次数为Y-X-110、循环队列中的元素个数与队头指针和队尾指针的变化而变化11、队列的修改是依先进先出的原则进行的12、设计算法时不仅要考虑对数据对象的运算和操作,还要考虑算法的控制结构13、顺序表具有以下两个基本特征:(1)线性表中所有元素所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。
(3)在顺序表中,每个元素占有相同的存储单元14、设栈的顺序存储空间为S(0:49),栈底指针bottom=X,栈顶指针top=Y(指向栈顶元素)。
则栈中的元素个数为X-Y+115、设栈的顺序存储空间为S(1: m),初始状态为top=m+1(X)。
计算机二级知识点总结c语言计算机二级知识点总结C语言C语言是一种通用的编程语言,广泛应用于计算机科学和软件开发领域。
对于计算机二级考试来说,掌握C语言的基本知识点是非常重要的。
本文将对C语言的一些重要知识点进行总结,帮助考生更好地准备考试。
一、基本语法1. 字符集:C语言使用ASCII字符集进行编程。
2. 注释:单行注释以“//”开头,多行注释以“/*”开头,以“*/”结尾。
3. 标识符:由字母、数字和下划线组成,必须以字母或下划线开头。
4. 关键字:C语言有一些预定义的关键字,如int、char、if 等。
二、数据类型1. 基本数据类型:包括整型(int)、字符型(char)、浮点型(float)和双精度浮点型(double)。
2. 枚举类型:使用enum关键字定义的一组命名常量。
3. 派生数据类型:由基本数据类型和其他数据类型组合而成的数据类型,如数组、结构体和联合体。
三、运算符和表达式1. 算术运算符:包括加法(+)、减法(-)、乘法(*)、除法(/)和取模(%)。
2. 关系运算符:用于比较两个表达式的结果,如等于(==)、不等于(!=)、大于(>)等。
3. 逻辑运算符:用于连接两个或多个表达式,如与(&&)、或(||)和非(!)。
4. 条件运算符:用于根据条件选择不同的值,形式为“条件 ? 值1 : 值2”。
四、控制语句1. 选择结构:使用if语句进行条件判断,可以使用if-else、if-else if-else等嵌套形式。
2. 循环结构:使用for、while和do-while语句进行循环操作。
3. 跳转语句:使用break和continue语句控制程序的跳转。
五、数组和指针1. 数组:一组相同类型的数据的有序集合,在C语言中以一维或多维数组的形式存在。
2. 指针:用来存储变量的地址,可以通过指针来访问和修改变量的值。
六、函数1. 函数定义:包括返回类型、函数名、参数列表和函数体。
计算机二级c语言 cC语言是一种广泛应用于计算机科学领域的编程语言。
在计算机二级考试中,掌握C语言的基本知识和技巧对于学生来说尤为重要。
本文将介绍C语言的基础知识、常见的语法结构和编程技巧,以及如何通过多种实例练习来提升对C语言的理解和应用能力。
一、C语言基础知识1. 变量和数据类型:在C语言中,变量用于存储和操作数据。
不同的数据类型可以存储不同类型的值,包括整型、浮点型、字符型等。
通过声明变量并赋予初始值,我们可以在程序中使用这些变量来进行计算和操作。
2. 运算符和表达式:C语言支持各种运算符,包括算术运算符、关系运算符、逻辑运算符等。
通过使用这些运算符,我们可以进行数学计算、比较和逻辑判断等操作。
3. 控制结构:C语言提供了多种控制结构,如条件语句、循环语句和跳转语句。
通过控制结构,我们可以根据不同的条件执行不同的代码块,实现程序的灵活控制和流程转移。
二、常见语法结构1. 函数:C语言通过函数来组织和管理代码,提高代码的复用性和可读性。
一个函数由函数头和函数体组成,函数头声明了函数的返回类型和参数类型,函数体包含了具体的代码实现。
2. 数组:数组是C语言中的一种数据结构,可以存储多个相同类型的元素。
通过数组,我们可以方便地管理和操作一组数据,如存储学生的成绩、统计某些数据等。
3. 结构体:结构体是一种自定义的数据类型,可以将多个不同类型的数据组合在一起。
通过结构体,我们可以定义和管理复杂的数据结构,如学生信息的存储和管理等。
三、编程技巧1. 模块化编程:将程序拆分为多个函数和模块,每个函数和模块负责完成特定的功能。
这样可以使程序结构更清晰,易于理解和维护。
2. 错误处理:在编写程序时,我们需要考虑可能出现的错误和异常情况,并设计相应的错误处理机制。
通过合理的错误处理,可以提高程序的健壮性和容错性。
4. 代码注释:为了方便自己和其他人阅读代码,我们应该养成良好的注释习惯。
通过适当的注释,可以使程序的逻辑更加清晰,便于理解和修改。
计算机二级C语言程序设计其它1.运算符的优先级和结合性注意:①第二级的‘*’代表取内容运算符,第三级的‘*’代表乘法运算符。
②第二级的‘-’代表负号运算符,第四级的‘-’代表减法运算符。
2.常用字符的ASCII码’\0’0;空格32;’0’48;’A’65;’a’97。
3.printf()函数的格式指示符%[标志][宽度][.精度][长度][类型];标志格式字符有:+(输出正、负号)、-(左对齐,右填空格)、空格(正数加空格,负数加负号)、#(加0、0x前缀,小数有小数点才加小数点,没有省略)宽度:用十进制整数表示输出数据的最少位数。
精度:以”.”开头,后接十进制整数n。
长度:有h、l两种,h表示短整型输出,l表示长整型输出。
类型格式字符:d/i,o(无符号八进制数,无前缀),x(无符号十六进制数,无前缀),u(无符号十进制数),f(以小数输出实数),e(以指数输出实数),g(不输出实型数后无意义的0),c,s4.scanf()函数的格式字符串%[*][输入数据宽度][长度]类型“*”符表示该输入项读如后不赋予相应的变量,即跳过该输入值,如scanf(“%d%*d%d”,&a,&b);输入1 2 3时,a=1,2被跳过,b=3;5.六种位运算&按位与、|按位或、^按位异或、~取反、<<左移、>>右移数组1.一维数组初始化时,可以不指定数组的长度。
如int a[]={0,2,5,8,7};系统可做出判断。
2.数组名代表数组的首地址,如a的值与&a[0]相同,数组名是地址常量,不是变量。
3.二维数组初始化时,可省略行长度,但不能省略列长度如int a[][3]={1,2,3,4,5,6};可部分赋值如int a[2][3]={{1},{4}};可按行赋值如int a[2][3]={{1,2,3},{4,5,6}};按内存排列赋值如int a[2][3]={1,2,3,4,5,6}。
下面分为四个部分进行组织。
文中标注了三个星号的,表示非常重要,基本每次考试都是必考;标注了两个星号或一个星号的,表示也较重要,很容易考到。
出现在【】括号中的内容,表示要很精确的背下来的。
第一部分算法与数据结构(历年比例41%)1、算法♦问题处理方案的正确而完整的描述称为【算法】。
算法分析的目的是,分析算法的效率以求改进。
算法的基本特征是【可行性】、【确定性】、【有穷性】和拥有足够情报。
♦算法的有穷性是指:算法程序的运行时间是有限的。
♦算法的复杂度是衡量算法好坏的度量,分为【时间复杂度】和【空间复杂度】。
★★ 时间复杂度是指执行算法所需要的【计算工作量】;算法的空间复杂度是指算法执行过程中所需的【存储空间】。
♦算法时间复杂度或空间复杂度中的一项的值,没有办法推出另一项的值。
2 、数据结构♦数据结构分为【逻辑结构】和【存储结构】。
线性结构和非线性结构属于逻辑结构;顺序、链式、索引属于存储结构(物理结构)。
循环队列属于【存储结构】。
♦数据的存储结构又称为物理结构,是数据的逻辑结构在计算机存储空间中的存放形式♦一个逻辑结构可以有多种存储结构,且各种存储结构影响数据处理的效率。
程序执行的效率与数据的存储结构密切相关。
♦数据结构分为线性结构和非线性结构,带链的队列属于【线性结构】。
♦线性表的存储结构主要分为顺序存储结构和链式存储结构。
顺序存储结构的存储一定是连续的,链式存储的存储空间不一定是连续的。
♦有序线性表既可以采用顺序存储结构,也可以采用链式存储结构。
♦队列是一种特殊的线性表,循环队列按照【先进先出】原则组织数据。
循环队列是队列的【顺序】存储结构。
♦数据的独立性分为【物理独立】性和【逻辑独立性】。
当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序可以不用修改,称为【物理独立性】。
3、栈和队列★★栈是一种特殊的线性表,是只能在一端进行插入和删除的线性表,特点是FILO(First In Last Out)。
★★栈是【先进后出】的线性表;栈具有记忆作用;对栈的插入与删除操作中,不需要改变【栈底指针】。
假定让元素1、2、3、A、B依次入栈,则出栈的顺序是:B、A、3、2、1。
♦栈与队列都是线性结构,树是非线性结构。
支持子程序调用的数据结构是【栈】。
♦栈与队列的共同点是,都只允许在【端点处】插入和删除元素。
♦栈只能顺序存储的描述是错误的。
栈可以有【顺序和链式】两种存储方式。
★★ 队列是允许在一段插入,在另一端进行删除的线性表,其特点是【先进先出】。
♦循环队列中元素的个数是由队头指针和队尾指针共同决定。
循环队列的头指针为front , 尾指针为rear,容量为maxSize ,则循环队列中元素的个数是【(rear-front+maxSize) mod maxSize 】。
4、线性链表♦线性链表是线性表的链式存储结构。
用链表表示线性表的优点是【便于插入和删除操作】。
♦线性链表的存储空间不一定连续,且各元素的存储顺序是任意的。
5、树与二叉树♦在树结构中,一个结点所拥有的后件(继)的个数称为该结点的度,所有结点中最大的度称为树的度。
二叉树各结点的度只可能取值0、1、2,不可能是其它值。
换言之,知道了度为1结点数量的前提下,叶子结点或度为2的结点中知道其一,就可以求出总的结点数。
★★★下面关于计算结点数量的几个性质,非常重要:(3)满二叉树第K层上的结点数量为2K-1;深度为K的满二叉树,结点总数为2K-1O上述的计算公式,关键要能够应用,例如,深度为7的满二叉树,度为2的结点数量是多少?既然是满二叉树,叶子结点的数量就是第7层的结点数量,也就是26,可以算出叶子结点为64,因此度为2的结点数是63(叶子结点数减去1)O★★★ 二叉树的前序遍历、中序遍历、后续遍历:前中后三个词是相对于根来讲的,前序是【根--> 左--> 右】,中序是【左--> 根--> 右】,后续是【左--> 右--> 根】。
具体操作为:先序遍历(D L R):访问根结点,按先序遍历左子树,按先序遍历右子树。
中序遍历(L D R):按中序遍历左子树,访问根结点,按中序遍历右子树。
后序遍历(L R D):按后序遍历左子树,按后序遍历右子树,访问根结点。
下面以中序遍历为例,来讲解实际的解题方法:对一棵树,将根结点下的左子树用一个椭圆圈起来,右子树也用一个椭圆圈起来。
之后,在左子树上标记上1,在根结点标记上2,在右子树上标记上3。
对在左边椭圆内的左子树,现在把它单独拿出来分析。
把它的左子树圈起来标上1.1,根结点标记上1.2,右子树标上1.3。
按照上述方法依次往下,直到树不能拆分,然后按照左--> 根---> 右”的顺序写出结点的访问先后即可。
6、查找技术♦对于长度为n的线性表,顺序查找最坏情况下需要比较n次。
(对数据是否有序没有要求)O♦顺序查找最好情况下查询次数是1,最坏情况下是n,平均为(1+ n)/2。
★★对于长度为n的有序线性表,二分法最坏情况下只需要比较log2n次。
(数据必须有序)♦能用二分法进行查找的是【顺序存储的有序线性表】。
7、排序技术★★对于长度为n的线性表,【冒泡排序、快速排序、简单插入排序、简单选择排序】这四种排序方式在最坏情况下的比较次数相同,都是【n(n-1)/2】。
堆排序的效率最高,是【nlog 2n】.★★希尔排序最坏情况下需要次比较【n1.5】。
希尔排序属于【插入类排序法】。
♦已知数据表A中每个元素距最终位置不远,为节省时间,应该采用的算法是【直接插入排序】。
选择排序、插入排序、快速排序、归并排序中对内存要求最大的是【归并排序】。
第二部分软件工程基础(历年比例27%)1 、软件工程基本概念★★ 软件是包括【程序】、【数据】及【相关文档】的完整集合,软件是一种逻辑产品。
软件工程三要素包括【方法、工具和过程】,其中【过程】支持软件开发的各个环节的控制和管理。
♦软件工程的核心思想:把软件产品当作是一个工程产品来处理,强调在软件开发过程中应用【工程化】原则。
♦从工程管理角度,软件设计一般分为两步完成,它们是【概要设计】和【详细设计】。
★★ 软件生命周期可分为多个阶段,一般分为【定义】阶段、【开发】阶段和【维护】阶段,编码和测试属于【开发阶段】。
♦需求分析阶段产生的主要文档是【软件需求规格说明书】。
软件需求的规格说明书应该有完整性、无歧义性、正确性、可验证性、可修改性等特征,其中最重要的是【正确性】。
2 、结构化分析与设计★★ 需求分析的分发有:【结构化】需求分析方法,【面向对象】的分析方法。
DFD 是【需求分析阶段】可以使用的工具之一。
♦结构化分析的常用工具:数据流图(DFD);数据字典;判定树;判定表。
♦在结构化分析使用数据流图(DFD)时候,利用【数据字典】对其中的图形元素进行确切的解释。
【数据字典】是结构化分析的核心。
♦典型的数据流类型有两种,【交换性】和【事务型】。
♦常见的过程设计工具有:图形工具(程序流程图、N-S, PAD, HIPO)、表格工具(判定表)、语言工具(PDL 伪码)。
♦内聚性是模块内部的联系,耦合性模块之间的相互联系的紧密程度。
★★★ 追求目标是:模块的内聚程度要高, 模块间的耦合程度要尽量弱。
即高内聚低耦合。
★★ 程序流程图中带有箭头的线段表示的是【控制流】。
【平行四边形】代表输入输出, 【矩形】代表处理,菱形代表【判断】(注意,数据流图中的箭头,代表【数据流】)。
♦符合结构化原则的三种基本控制结构是:【顺序结构】 ,【选择结构】和【循环结构】。
3 、软件测试与维护★★ 软件测试的目的是尽可能多的发现程序中的错误,但是不包括改正错误。
(软件调试的目的才是改正错误)★★ 软件测试分为静态测试和动态测试,其中【静态测试】是指不执行程序,只对程序文本进行检查。
软件的动态测试主要包括【黑盒测试】和【白盒测试】。
♦黑盒测试的方法有等价类划分法,边界值分析法,错误推测法,因果图;白盒测试主要方法有逻辑覆盖、基本路径测试。
(考试时给出一种方法的名字,你要知道属于白盒还是黑盒)【白盒测试】的原则之一是保证所测模块的每一个独立路径至少要执行一次。
白盒测试将程序看做是【路径的集合】。
♦软件测试一般按照四个步骤进行:单元测试,集成测试,验收测试和系统测试。
集成测试应该在【单元测试】之后进行。
♦在模块测试中,需要为每个被测试的模块设计【驱动模块】和【承接模块】。
其中,驱动模块的作用是将测试的数据传给被测试的模块,并显示结果。
♦【测试用例】是为某个目标而编制的一组测试输入、执行条件及预期结果。
测试用例包括输入值集和【输出值集】。
★★ 诊断和改正程序中的错误称为【程序调试】(或软件调试),通常也称为Debug 。
软件调试可分为【静态调试】和【动态调试】。
♦在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程称为【软件维护】。
注意软件维护不属于软件生命周期【开发阶段】的任务。
第三部分数据库设计基础(历年比例24%)1 、数据库系统基本概念♦数据库设计的根本目标是要解决【数据共享问题】。
在数据库管理技术发展的三个阶段中,数据共享最好的是【数据库系统阶段】。
数据独立性最高的阶段是【数据库系统阶段】。
♦数据库系统与文件系统的区别是前者具有【特定的数据模型】。
♦数据库系统常见的数据模型有层次模型,网络模型和【关系模型】。
★★ 数据库系统的核心是【数据库管理系统】。
♦ DBS 包括DB 和DBMS 。
完整讲,数据库系统DBS 由数据库DB 、数据库管理系统 DBMS 、 数据库管理员 DBA 、硬件平台和软件平台组成。
♦ 数据库 应用系统 的核心 是【数据库维护】。
♦ 数据库系统的三级模式结构:内模式处于最底层,它反映了数据在计算机物理结构中的 实际存储形式; 概念模式处于中层, 它放映了设计者的数据全局逻辑要求, 与软硬件环境无 关; 外模式处于最外层,它反映了用户对数据的要求。
♦ 在数据库系统中,用户所见的数据模式为【外模式】。
♦ 数据库设计的四个阶段是:需求分析、概念设计、 图转换成关系数据模型属于【逻辑设计】阶段。
♦ 数据库管理系统提供的数据语言:数据定义语言 言DCL 。
SQL 的全称是 Structured Query Language 2 、数据模型 ★★★ 实体之间的联系用 树形结构 来表示的模型是【层次模型】。
采用二维表来表示的是 【关系模型】。
在关系数据库中,把数据表示成二维表,每一个二维表称为【关系】。
♦ 在关系数据库中,用来表示实体之间联系的是【关系】。
♦ 将 E-R 图转化为关系模式时,实体和联系都可以表示为【关系】。
★★★ 确定两个实体之间是一对一、一对多、还是多对多的方法是:选择实体 A ,看是否 有多个实体B 与之对应;选择实体 B ,看是否有多个实体 A 与之对应。