计算机二级c语言历年常考知识点精粹

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

历年常考知识点精粹考点一算法复杂度算法的时间复杂度是指执行算法所需要的计算工作量。算法的空间复杂度是指执行这个算法所需要的时间。考点二线性结构与非线性结构一般将线性结构分为两大类型:线性结构与非线性结构。一个非空的线性结构满足两个条件:(1)有且只有一个根节点;(2)每一个节点最多有一个前件,也最多有一个后件。不满足线性结构条件的数据结构是非线性结构。栈、队列、双向链表都是线性结构,树、二叉树是非线性结构。考点三栈和队列1.栈先按照“先进后出”或“后进先出”的原则组织数据。2.栈的基本运算有三种:入栈、退栈与读栈顶元素。3.列队是允许在一端进行插入、而在另一端进行删除的线性表,他又被称为“先进先出”或“后进后出”的线性表。考点四树和二叉树树是一种简单的非线性结构。结点的度:在树结构中,每一个结点所拥有的后件的个数。树的度:树的最大层数。二叉树是一种特殊的树形结构,每个结点最多只有两棵子树,且有左右之分不能互换。二叉树的性质:(1)在二叉树的第k层,最多有2k-1(k≥1)个结点。(2)深度为m的二叉树最多有2m-1个结点。(3)在任意一棵二叉树中,度为0的结点(即叶子结点)总是比度为2的结点多一个。考点五查找方法1.顺序查找是指在一个给定的数据结构中查找某个特定的元素。在下列两种情况下只能用顺序查找。(1)如果线性表为无序表,则不管是顺序存储结构还是链式存储结构,只能用顺序查找。(2)即使是有序线性表,如果采用链式存储结构,也只能用顺序查找。2.二分法查找只适用于顺序存储的有序表。对于长度为n的有序线性表,在最坏的情况下,二分查找只需要比较㏒2n次。考点六交换类排序法1.冒泡排序法:在最坏的情况下,冒泡排序需要比较的次数为n(n-1)/2。2.快速排序法:任取待排序序列中的某个元素作为基准(一般取第一个元素),通过一趟排序,将待排序元素分为左右两个子序列,左序列元素的排序码均小于或等于基准元素的排序码,右子序列的排序码则大于基准元素的排序码,然后分别对两个子序列进行排序,直至整个序列有序。考点七软件生命周期软件生命周期是指软件产品从提出、实现、使用维护到停止适用退役的过程,可以分为软件定义、软件开发软件运行维护三个阶段。考点八数据库设计基础1.数据库管理系统是数据系统的核心。数据库系统包含数据库、数据库管理系统、数据库管理员、硬件平台和软件平台五部分。2.数据管理发展至今经历了三个阶段:人工管理阶段、文件系统阶段和数据库系统阶段。3.数据模型主要分为:概念数据模型、逻辑数据模型、物理数据模型。4.关系模型及相关概念关系一个关系对应一张二维表。一个关系就是一张二维表,但是个二维表不一定是一个关系。元组:表中的一行称为一个元组。属性:表中的一列称为一个属性,给每一个属性起一个名称称为属性名。5.数据库设计中有两种方法:面向数据的方法和面向过程的方法。考点九E-R模型1.两个实体集间的联系实际上是实体集间的函数关系,这种函数关系可以有以下几种:一对一、一对多或多对一、多对多。2.E-R模型的图示法(1)实体:用矩形表示,在矩形内写上该实体集的名字。(2)属性:用椭圆形表示,在椭圆形内写上给属性的名字。(3)联系:用菱形表示,菱形内写上联系名。考点十面向对象方法的基本概念面向对象的程序设计以对象为核心,强调对象的抽象性,封装性,继承性和多样性。对象(object):面向对象方法中最基本的概念,可以用来表示客观世界中的任何实体,对象是实体的抽象。对象的基本特点:(1)标识唯一性。(2)分类性。(3)多态性。(4)封装性。(5)模块独立性好。继承:是使用已有的类定义作为基础建立新类的定义技术,广义指能够直接获得已有的性质和特征,而不用重复定义它们。继承具有传递性。多态性:是指同样的消息被不同的对象接受时可导致完全不同的行动的现象。考点十一C程序C语言程序结构有三种:顺序结构循环结构选择结构。每个C语言程序中main函数有且只有一个。读程序都要从main()入口,然后从最上面顺序往下读。考点十二书写格式每条语句的后面必须有一个分号,分号是语句的一部分。一行内可写多条语句,一个语句可写在多行上。考点十三标识符1.合法标识符的命名规则:标识符是由字母、数字、下划线组成,并且第一个字符必须为字母或下划线。1.C语言的标识符分为以下三类:(1)关键字。它们在程序中有固有的含义,不能另作他用。如int、for、switch等。(2)预定义标识符。预先定义并具有特定含义的标识符。如define、include等。(3)用户标识符。用户根据需要定义的标识符,符合命名规则且不与关键字重合。注意:关键字不可以作为用户标识符。考点十四实型数据1.实型数据的合法形式:小数形式和指数形式。2.判定指数形式合法性:字母e或E之前必须要有数字,且e或E后面的指数必须为整数。考点十五字符C语言中,程序中用单引号把一个字符括起来作为字符常量,用关键字char定义字符变量。1.‘1’是字符占一个字节,“1”是字符串占两个字节(含有一个结束符号“\0”)。‘0’的ASCII码是48,‘a’的ASCII码是97,‘A’的ASCII码是65。2.字符型和整数:“chara=65;printf(“%c”,a);”得到的输出结果是A。“printf(“%d”,a);”得到的输出结果是65。考点十六转义字符1.转义字符常量,如‘\n’、‘101’、‘141’只代表一个字符。2.反斜线后的八进制数可以不用0开头。3.反斜线后的十六进制数只可由小写字母x开头,不允许用大写字母X,也不能用0x开头。考点十七算术运算算术运算符一共有“+、-、*、/、%”这五个。考点十八强制类型转换强制类型转换是将一个运算对象转换成制定类型,格式为:(类型名)(表达式)。要注意格式是(int)a不是inta,注意类型上一定要有括号。考点十九赋值1.赋值表达式的形式:变量名=表达式。赋值运算符的左侧只能是变量,不能是常量或表达式。2.符合赋值运算符:a*=m+2是a=a*(m+2)。3.自加、自减表达式:考试口诀:++在前先加后用,++在后先用后加(--亦是如此)。考点二十位运算C语言中提供了6种运算符:按位求反~、按位左移<<、按位右移>>、按位与&、按位异或、按位或|。(优先级从高到低)总的处理方法:先把十进制变为二进制再变为十进制。异或运算的规则:相同为0,不同为1。左移一位,表示乘以2;右移一位,表示除以2。考点二十一printf函数与scanf函数Printf函数格式为:printf(输出控制,输出列表)。输出控制是用一对双引号括起来的,包括格式说明和原样信息、输出列表包含若干输出项。“%d”对应整型,“%f”对应实数型,“%c”对应字符型,“%o”对应八进制无符号整型,“%x”对应无符号十六进制整型,“%u”对应无符号整型,“%e”对应指数型,“%s”对应字符串型。可在%和格式字符之间加一个数来控制数据所占的宽度和小数位数。Scanf函数的格式为:scanf(格式控制,地址列表)。注意:scanf函数中的“格式控制”后面应是变量地址,而不是变量名。考点二十二putchar函数与getchar函数putchar函数用于输出单个字符。Getchar函数用于输入单个字符。例如:chara=getchar()是没有参数的,从键盘输入一个字符给变量a。putchar(‘y’)表示把字符输出到屏幕中。考点二十三如何交换两个变量不可以把x=y,y=x;要用中间变量t,语句为:t=x;x=y;y=t。考点二十四关系运算与逻辑运算1.关系运算符有6个,分别是>,>=,<,<=,==,!=,前四种优先级高于后两种。2.关系表达式:关系表达式真时为1,假时为0。3.由逻辑运算符和运算对象组成的表达式称为逻辑表达式。逻辑表达式的运算结果或者为1或者为0。逻辑运算符有三种:逻辑非(!),逻辑与(&&),逻辑或(||)。注意:短路现象。例如a++||b++,如果表达式a++的值非零,则表达式b++不在执行,考试中比较常见。考点二十五if语句If语句可以单独出现,也可以与else匹配出现。If语句可以嵌套,这是else总是与离它最近的且没有与else匹配的if匹配。注意:if语句的子句是紧接if或else的一句,如有多句需要用{}括起来。考点二十六条件运算条件运算符是唯一的三目运算符,格式为:表达式1?表达式2:表达式3。表达式1的值是非零时,整个表达式的值为表达式2的值,表达式1的值是令时,整个表达式的值是表达式3的值。考点二十七switch语句1.switch语句通常总是和break语句联合适用,使得switch语句真正起到分支的作用。2.switch只可以和break一起用,不可以和continue一起用。3.switch后小括号里面的表达式不能为实型,case后表达式不能有变量。考点二十八三种循环结构三种循环为:for(),while(),do-while()1.for循环当中必须是两个分号,千万不要忘记。2.循环一定要有结束的条件,否则就成了死循环。3.do-while循环最后的分号一定不能够丢。do-while循环是至少执行一次的循环。考点二十九break和continue1.break:用break语句可以使流程跳出switch语句体,也可以用break语句在循环结构中终止本层循环体,从而提前结束本层循环。2.continue:语句的作用是结束本次循环,即循环体内剩下的语句不再执行,跳到循环开始,然后判断循环条件,进行新一轮的循环。考点三十循环的嵌套1.循环的嵌套就是循环里面还有嵌套。一般只考查两层嵌套,讯混嵌套通常是处理二维数组。2.循环结构的重点,笔试所占分值一般在13分左右,在上机考试中也是必考知识点,应用性很强。、考点三十一函数的的定义和函数的返回值1.函数是具有一定功能的一个程序块,是C语言的基本组成单位,在函数定义中不可以再定义函数,即不能嵌套定义函数。函数返回值的类型默认为int型。2.函数的首部为:函数的返回值类型名函数名(类型名形参1,类型名形参2,…),3.函数通过return语句返回以个值,返回值的类型与函数类型一样。Teturn语句值执行一次,执行完或函数体结束后退出函数。考点三十二库函数、函数的返回值1.调用C语言标准库函数时要包含include命令行,include命令行以#开头,后面是“”或<>括起来的后缀为“.h”的头文件。以#开头的一行称为编译预处理命令行,编译预处理不是C语言语句,不加分号,不占运行时间。2.常用的库函数有:sqrt()算术平方个函数,fabs()绝对值函数,sin()正弦函数,pow()幂函数,printf()输出字符函数,scanf()输入字符函数,strlen()求串中字符个数函数等。考点三十三函数的声明、函数的参数即值传递1.函数要“先定义后调用”或“先声明再调用后定义”。函数的定义一定要有函数名、函数返=返回值类型、函数参数类型,但不一定要有形参的类型。2.形式参数简称形参,是定义函数时函数名后面括号中的参数。实在参数简称实参,是调用函数时函数名后面括号中的参数。形参和实参分别占用不同的存储单元,实参向形参单向传递数值。考点三十四函数的递归调用函数直接或间接的调用自己称为函数的递归调用。递归调用必须有一个明确的结束递归的条件。考点三十五指针变量1.指针表里是用来存储地址的。2.定义格式为:类型名*指针变量名1,类型名*指针变量名2,…;指针**p可以理解为基类型为int的指针类型。考点三十六指针变量的初始化指针变量在使用前必须先初始化,把一个具体的地址赋给它,否则引用时会有副作用,如果不指向任何数据就赋“空值”即NULL。指针变量初始化的两种方法方法一:inta=2,*p=&a;(定义的同时初始化)方法二:inta=2,*p;p=&a;(定义之后初始化)考点三十七数组的定义及初始化1.数组的定义:一组具有相同类型的数据的集合,这些数据称为数组元素。格式为:类型名数组名[常量表达式]。数据所占字节数=元素个数×基类型所占字节数的乘积2.数组

1 / 6
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功