当前位置:文档之家› 全国计算机二级C语言笔试部分(超完整复习资料)[1]

全国计算机二级C语言笔试部分(超完整复习资料)[1]

全国计算机二级C语言笔试部分(超完整复习资料)[1]
全国计算机二级C语言笔试部分(超完整复习资料)[1]

公共基础知识资料

第一章数据结构与算法

【考点1】算法的基本概念

算法:是指一组有穷的指令集,是解题方案的准确而完整的描述。算法不等于程序,也不等于计算方法。

算法的基本特征:

确定性,算法中每一步骤都必须有明确定义,不允许有多义性;

有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止;

可行性,算法原则上能够精确地执行;

拥有足够的情报。

算法的组成要素:一个算法由数据对象的运算和操作以及其控制结构这两部分组成。

算法的基本运算和操作:算术运算,逻辑运算,关系运算,数据传输。算法的基本控制结构:顺序,选择,循环。

算法基本设计方法:列举法、归纳法、递推、递归、减半递推技术。【考点2】算法的复杂度

算法效率的度量——算法的复杂度:时间复杂度和空间复杂度。

算法时间复杂度:指执行算法所需要的计算工作量。通常,一个算法所用的时间包括编译时间和运行时间。

算法空间复杂度:指执行这个算法所需要的内存空间。包括算法程序所占的空间,输入的初始数据所占的空间,算法执行过程中所需的额

外空间。

空间复杂度和时间复杂度并不相关。

【考点3】数据结构的基本概念

数据:数据是客观事物的符号表示,是能输入到计算机中并被计算程序识别和处理的符号的总称,如文档,声音,视频等。

数据元素:数据元素是数据的基本单位。

数据对象:数据对象是性质相同的数据元素的集合。

数据结构:是指由某一数据对象中所有数据成员之间的关系组成的集合。

【考点4】逻辑结构和存储结构

数据结构可分为数据的逻辑结构和存储结构。

数据的逻辑结构是对数据元素之间的逻辑关系的描述,与数据的存储无关,是面向问题的,是独立于计算机的。它包括数据对象和数据对象之间的关系。

数据的存储结构也称为数据的物理结构,是数据在计算机中的存放的方式,是面向计算机的,它包括数据元素的存储方式和关系的存储方式。

数据结构和逻辑结构的关系:一种数据的逻辑结构可以表示成多种存储结构即数据的逻辑结构和存储结构不一定一一对应。

常见的存储结构有:顺序,链接,索引等。采用不同的存储结构其数据处理的效率是不同的。

【考点5】线性结构和非线性结构

线性结构的条件(一个非空数据结构):(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。

非线性结构:不满足线性结构条件的数据结构。

栈、队列、双向链表是线性结构,树、二叉树为非线性结构。

【考点6】线性表及其顺序存储结构

线性表是由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。

在复杂线性表中,由若干项数据元素组成的数据元素称为记录;由多个记录构成的线性表称为文件。

非空线性表的结构特征:

(1)有且只有一个根结点a1,它无前件;

(2)有且只有一个终端结点an,它无后件;

(3)除根结点与终端结点外,其他所有结点有且只有一个前件,也有且只有一个后件。

结点个数n称为线性表的长度,当n=0时,称为空表。

线性表的顺序存储结构具有以下两个基本特点:

(1)线性表中所有元素所占的存储空间是连续的;

(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。元素ai的存储地址为:ADR(ai)=ADR(a1)+(i-1)*k,ADR(a1)为第一个元素的地址,k代表每个元素占的字节数。

顺序表的运算:查找、插入、删除。

【考点7】线性链表

线性链表是线性表的链式存储结构,数据结构中的每一个结点对应于一个存储单元,这种存储单元称为存储结点,简称结点。结点由两部分组成:(1) 用于存储数据元素值,称为数据域;(2) 用于存放指针,称为指针域,用于指向前一个或后一个结点。 在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确定的。

链式存储方式既可用于表示线性结构,也可用于表示非线性结构。 线性单链表中,HEAD 称为头指针,HEAD=NULL (或0)称为空表。

双向链表有两个指针:左指针(Llink )指向前件结点,右指针(Rlink )

指向后件结点。

循环链表:循环链表与单链表的不同的是它的最后一个结点的指针域存放的事指向第一个结点的指针而单链表存放的是空指针。

线性链表的基本运算:查找、插入、删除。

【考点8】栈

1、栈的基本概念

……

图3 循环链表的结构 L D R …… 图2 双链表的结构 L D R

L D R 图1 单链表的结构 数据域 指针域 数据域 指针域

数据域 指针域 ……

栈是一种特殊的线性表,只允许在表的一端进行插入和删除的线性表;插入,删除的一端为栈顶,另一端为栈底;当表中没有元素时为空栈。

栈是一种后进先出(或先进后出Last In First Out)的线性表。栈具有记忆功能。栈的实例:火车调度,子弹夹。

2、栈的存储结构

顺序存储结构:用一组地址连续的存储单元即一维数组来存储;

链式存储:用线性链表来存储;

3、栈的基本运算

(1) 入栈运算,在栈顶位置插入元素;

(2) 退栈运算,删除元素(取出栈顶元素并赋给一个指定的变量);

(3) 读栈顶元素,将栈顶元素赋给一个指定的变量,此时指针无变化。【考点9】队列

1.队列的基本概念

队列是一种特殊的线性表,只允许在表的一端插入,在另一端删除,允许插入的一端是队尾(rear),允许删除的一端为队头(front);当表中没有元素是空队列;队列是一种先进先出的线性表。(FIFO)

2、队列的存储结构

顺序存储:一维数组。

链式存储:线性链表。

3、队列的运算:

(1) 入队运算:从队尾插入一个元素;(2) 退队运算:从队头删除

一个元素。

队列的顺序存储结构一般采用循环队列的形式。循环队列s=0表示队列为空;s=1且front=rear表示队满。

计算循环队列的元素个数:“尾指针减头指针”,若为负数,再加其容量即可。

【考点10】树的基本概念

树是一种非线性结构,是n个结点的有限集。当n=0 时为空树,n>0时为非空树。结点的度:结点所拥有的子树的个数。

叶子结点:度为0的结点。

分支结点:除叶子结点以外的结点。

结点的层次:根结点在第一层,同一层上左右结点的子结点在下一层。树的深度:所处层次最大的那个结点的层次。

树的度:树中所有结点的度的最大值。

【考点11】二叉树及其基本性质

1、二叉树的概念

二叉树是一种特殊的树形结构,每个结点最多只有两棵子树,且有左右之分不能互换,因此,二叉树有五种不同的形态,见教材12页。

2、二叉树的性质

性质1 在二叉树的第k层上,最多有2k-1(k≥1)个结点。

性质2 深度为m的二叉树最多有2m-1个结点。

性质3 在任意一棵二叉树中,度为0的结点(叶子结点)总是比度为2的结点多一个。

性质4 具有n 个结点的二叉树,其深度不小于[log 2n]+1,其中[log 2n]表示为log 2n 的整数部分。

3、二叉树的存储结构:详见教材第13-14页。

【考点12】满二叉树与完全二叉树 满二叉树:除最后一层外,每一层上的所有结点都有两个子结点。在满二叉树中,每一层上的结点数都达到最大值,即在满二叉树的第k 层上有2k-1个结点,且深度为m 的满二叉树有2m -1个结点。

完全二叉树是指这样的二叉树:除最后一层外,每一层上的结点数均达到最大值;在最后一层上只缺少右边的若干结点。

满二叉树是完全二叉树,而完全二叉树一般不是满二叉树。

【考点13】完全二叉树的性质

性质1 具有n 个结点的完全二叉树的深度为[log 2n]+1。

性质2 完全二叉树中度为1的结点数为0或1。

【考点14】二叉树的遍历

前序遍历:先访问根结点、然后遍历左子

树,最后遍历右子树;并且,在遍历左、

右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。

前序遍历图5可得:ABCDFHEG 。

中序遍历:先遍历左子树、然后访问根结

点,最后遍历右子树;并且,在遍历左、

右子树时,仍然先遍历左子树,然后访问根结点,最后遍历右子树。 A B C E D

G F H

图4 二叉树的遍历

中序遍历图5可得:BAFHDCGE。

后序遍历:先遍历左子树、然后遍历右子树,最后访问根结点;并且,在遍历左、右子树时,仍然先遍历左子树,然后遍历右子树,最后访问根结点。

后序遍历图5可得:BHFDGECA。

【考点15】顺序查找

顺序查找是从表的一端开始,依次扫描表中的各个元素,并与所要查找的数进行比较。

在下列两种情况下也只能采用顺序查找:

(1)如果线性表为无序表,则不管是顺序存储结构还是链式存储结构,只能用顺序查找。

(2)即使是有序线性表,如果采用链式存储结构,也只能用顺序查找。

【考点16】二分查找

二分查找的条件:(1)用顺序存储结构(2)线性表是有序表。

查找的步骤:详见教材第16页。

对于长度为n的有序线性表,在最坏情况下,二分法查找只需比较log2n次,而顺序查找需要比较n次。

【考点17】排序

1、交换排序

(1)冒泡排序法,在最坏的情况下,冒泡排序需要比较次数为n(n -1)/2。

(2)快速排序法,在最坏的情况下,快速排序需要比较次数为n(n -1)/2。

2、插入类排序法:

(1)简单插入排序法,最坏情况需要n(n-1)/2次比较;

(2)希尔排序法,最坏情况需要O(n1.5)次比较。(大写O是算法复杂度的表示方法)

3、选择类排序法:

(1)简单选择排序法,最坏情况需要n(n-1)/2次比较;

(2)堆排序法,最坏情况需要O(nlog2n)次比较。

相比以上几种(除希尔排序法外),堆排序法的时间复杂度最小。

第二章程序设计基础

【考点1】程序设计方法与风格

形成良好的程序设计风格需注意:(详见教材第19页)。

1、源程序文档化;

2、数据说明的方法;

3、语句的结构;

4、输入和输出。

注释分序言性注释和功能性注释。

语句结构清晰第一、效率第二。

【考点2】结构化程序设计方法的四条原则

1、自顶向下;

2、逐步求精;

3、模块化;

4、限制使用goto语句。【考点3】结构化程序的基本结构

顺序结构:是最基本、最普通的结构形式,按照程序中的语句行的先后顺序逐条执行。

选择结构:又称为分支结构,它包括简单选择和多分支选择结构。循环结构:根据给定的条件,判断是否要重复执行某一相同的或类似的程序段。循环结构对应两类循环语句:先判断后执行的循环体称为当型循环结构;先执行循环体后判断的称为直到型循环结构。

【考点4】面向对象的程序设计及面向对象方法的优点

面向对象的程序设计以对象为核心,强调对象的抽象性,封装性,继承性和多态性。

面向对象方法的优点

(1)人类习惯的思维方法一致;(2)稳定性好;(3)可重用性好;

(4)易于开发大型软件产品;(5)可维护性好。

【考点5】对象及其特点

对象(object):面向对象方法中最基本的概念,可以用来表示客观世界中的任何实体,对象是实体的抽象。

对象的基本特点:

(1)标识惟一性;(2)分类性;(3)多态性;(4)封装性;(5)模块独立性好。

【考点6】属性,类和实例

属性:即对象所包含的信息,它在设计对象时确定,一般只能通过执行对象的操作来改变。

类:是具有相似属性与操作的一组对象。类是关于对象性质的描述。类是对象的抽象,对象是其对应类的一个实例。

【考点7】消息及其组成

消息:是一个实例与另一个实例之间传递的信息。对象间的通信靠消息传递。它请求对象执行某一处理或回答某一要求的信息,它统一了数据流和控制流。

消息的组成包括:

(1)接收消息的对象的名称;(2)消息标识符,也称消息名;(3)零个或多个参数。

【考点8】继承和多态

继承:是使用已有的类定义作为基础建立新类的定义技术,广义指能够直接获得已有的性质和特征,而不必重复定义他们。

继承具有传递性,一个类实际上继承了它上层的全部基类的特性。继承分单继承和多重继承。单继承指一个类只允许有一个父类,即类等级为树形结构;多重继承指一个类允许有多个父类。

多态性:是指同样的消息被不同的对象接受时可导致完全不同的行动的现象

第三章软件工程基础

【考点1】软件定义与软件特点

软件指的是计算机系统中与硬件相互依存的另一部分,包括程序、数据和相关文档的完整集合。

名描述

程序软件开发人员根据用户需求开发的、用程序设计语言描述的、适合计算机执行的指令序列

使程序能正常操纵信息的数据结构

与程序的开发、维护和使用有关的图文资料

软件的特点:

软件是一种逻辑实体,具有抽象性;

软件的生产与硬件不同,它没有明显的制作过程;

软件在运行、使用期间不存在磨损、老化问题;

软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题;

软件复杂性高,成本昂贵;

软件开发涉及诸多的社会因素。

根据应用目标的不同,软件可分应用软件、系统软件和支撑软件(或工具软件)。

名称描述

应用软件为解决特定领域的应用而开发的软件,如办公自

动化软件

系统软件计算机管理自身资源,提高计算机使用效率并为

计算机用户提供各种服务的软件,如操作系统

支撑软件(或工具软件) 支撑软件是介于两者之间,协助用户开发软件的

工具性软件。

【考点2】软件的生命周期

软件生命周期是指软件产品从提出、实现、使用维护到停止使用退役的整个过程。可分为软件定义,软件开发及软件维护3个阶段。软件生命周期中,能够准确确定软件系统必须做什么和必须具备哪些功能的阶段是:需求分析。

定义阶段 开发阶段

维护阶段

【考点3】软件危机和软件工程的概念

软件危机泛指在计算机软件的开发和维护过程中遇到的一系列严重的问题,集中表现在成本,质量。生产效率等几个方面。

所谓软件工程是指采用工程的概念、原理、技术和方法指导软件的开发与维护。是建立并使用完善的工程化原则,以较经济的手段获得,能在实际机器上有效运行的可靠软件的一系列方法;软件工程的主要思想强调在软件开发过程中需要应用工程化原则。软件工程的核心思想是把软件当作一个工程产品来处理。

软件工程包括3个要素:方法,工具和过程

名称

描述 方法

方法是完成软件工程项目的技术手段

可行性研究初步项目计划 需求 分析 概要 设计 详细 分析 实现 测试 交付 使用 维护 退役

工具工具支持软件的开发、管理、文档生成

过程过程支持软件开发的各个环节的控制、管理

【考点4】软件工程过程

软件工程过程是把软件转化为输出的一组彼此相关的资源活动,包含4种基本活动:

(1)P(plan)——软件规格说明;(2)D(do)——软件开发;(3)C(check)——软件确认;(4)A(action)——软件演进。【考点5】软件开发技术和软件工程管理

软件工程的理论和技术性研究的内容主要包括软件开发技术和软件工程管理。

软件开发技术包括软件开发方法学、开发过程、开发工具和软件工程环境,其主体内容是软件开发方法学。

软件开发方法包括分析方法,设计方法和程序设计方法。

软件工程管理包括软件管理学,软件工程经济学,软件心理学等。软件管理学包括人员组织,进度安排,质量保证,配置管理,项目计划等。

软件工程经济学是研究软件开发中成本的估算,成本效益的方法和技术。

【考点6】软件工程的原则

软件工程的原则:抽象,信息隐蔽,模块化,局部化,确定性,一致性,完备性,可验证性(详细见教材第28-29页)。

【考点7】需求分析概述

需求分析阶段的工作:需求获取,需求分析,编写需求规格说明书,需求评审。

需求分析方法有:

(1)结构化需求分析方法;

①面向数据结构的Jackson方法(ISD);

②面向数据流的结构化分析方法(SA);

③面向数据结构的结构化数据系统开发方法(DSSD);

(2)面向对象的分析的方法(OOA)。

从需求分析建立的模型的特性来分:静态分析和动态分析。

【考点8】结构化方法和结构化分析方法

1、结构化方法包括结构化分析方法,结构化设计方法,结构化编程方法。

结构化方法中,软件功能分解属于总体设计阶段。

2、结构化分析方法的概念

结构化分析方法是面向数据流自顶而下逐步求精进行需求分析的方法。

结构化分析方法在软件需求分析阶段的应用。

3、结构化分析的常用工具

数据流图(DFD-Data Flow Diagram):是结构化分析方法中用于系统逻辑模型的一种工具。它以图形的方式描绘在系统中流动和处理的过程。

数据流图中四种基本的符号。

箭头:表示数据流,数据流是数据在系统中传播的路径。

圆或椭圆:表示加工,加工又称为数据处理,是对数据流进行某些操作或变换。

双横:表示数据存储(数据源)。数据存储又称为文件,指暂时保存的数据,它可以是数据库文件或任何形式的数据组织。

方框:源、潭。表示数据的源点或终点。它是软件系统外部环境中的实体,统称外部实体

数据字典(DD):它是结构分析方法的核心,是用来描述系统中所用到的全部数据和文件的文档,作用是对DFD中出现的被命名的图形元素进行确切解释。

数据字典由以下4类元素组成

(1)数据流(2)数据流分量(3)数据存储(4)处理

判定树(决策树):是一种描述加工的图形工具,适合描述时候处理中具有多个判断,而且每个决策与若干条件有关。

判定表:与判定树类似,也是一种描述加工的图形工具。如果一个加工逻辑有多个条件、多个操作,并且在不同的条件组合下执行不同的操作,那么可以使用判定表来描述。

【考点9】软件需求规格说明书

软件需求规格说明书(SRS,Software Requirement Specification)是需求分析阶段得出的最主要的文档。软件需求规格说明书的特点:有正确性、无歧义性、完整性、可验证性、一致性、可理解性、可修改性和可追踪性。其中最重要的是无歧义性。

【考点10】软件设计的基本概念

软件设计是确定系统的物理模型。

软件设计是开发阶段最重要的步骤,是将需求准确地转化为完整的软件产品或系统的唯一途径。

从技术观点上看,软件设计包括软件结构设计、数据设计、接口设计、过程设计。

(1)结构设计定义软件系统各主要部件之间的关系;

(2)数据设计将分析时创建的模型转化为数据结构的定义;

(3)接口设计是描述软件内部、软件和协作系统之间以及软件与人之间如何通信;

(4)过程设计则是把系统结构部件转换为软件的过程性描述。

从工程管理角度来看,软件设计分两步完成:概要设计和详细设计。(1)概要设计将软件需求转化为软件体系结构、确定系统级接口、全局数据结构或数据库模式;

(2)详细设计确立每个模块的实现算法和局部数据结构,用适当方法表示算法和数据结构的细节。

【考点11】软件设计的基本原理

1、软件设计中应该遵循的基本原理和与软件设计有关的概念:

模块化:把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能。

抽象化:抽出事物的本质特性而暂时不考虑它们的细节。

信息隐藏和局部化:信息隐蔽是指在一个模块内包含的信息(过程或

数据),对于不需要这些信息的其他模块来说是不能访问的,实现信息隐蔽依靠对象的封装。

模块独立性:模块独立性是指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。模块的独立程度是评价设计好坏的重要度量标准。

【考点12】耦合性和内聚性

衡量软件的模块独立性是用耦合性和内聚性两个定性的度量标准。耦合性:是对一个软件结构内不同模块之间互联程度的度量。耦合性的强弱取决于模块间接口的复杂程度。

内聚性:是一个模块内部各个元素间彼此结合的紧密程度的度量。一个模块的内聚性越强则该模块的模块独立性越强。一个模块与其他模块的耦合性越强则该模块的模块独立性越弱。

在结构程序设计中,模块划分的原则是模块内具有高内聚度,模块间具有低耦合度。

耦合和内聚的种类(详见教材第35页)。

耦合度由低到高:非直接耦合,数据耦合,标记耦合,控制耦合,外部耦合,公共耦合,内容耦合。

内聚性由强到弱:功能内聚,顺序内聚,通信内聚,过程内聚,时间内聚,逻辑内聚,偶然内聚。

【考点13】结构化设计方法

结构化分析方法是面向数据流自顶而下,逐步求精进行需求分析的方法,基本思想将软件设计成由相对独立,单一功能的模块组成的结构,

与结构分析方法衔接使用,以数据流图为基础得到软件的模块结构,适用于变换型结构和事物型结构的目标系统。

1、概要设计的任务:(1)划分出组成系统的物理元素(2)设计软件的结构

2、概要设计的工具:

结构图(SC-Structure Chart)也称程序结构图,在结构图中,模块用一个矩形表示,箭头表示模块间的调用关系。可以用带注释的箭头表示模块调用过程中来回传递的信息。还可用带实心圆的箭头表示传递的是控制信息,空心圆箭心表示传递的是数据。

结构图的基本形式:基本形式、顺序形式、重复形式、选择形式。结构图有四种模块类型:传入模块、传出模块、变换模块和协调模块。程序结构图中的专业术语:

名称描述

深度表示控制的层数

上级模块,从属模块上,下两层模块a和b,且有a调用b,则a是上级模块,b是从属模块

宽度整体控制跨度(最大模块的层)的表示

扇入调用该模块的模块个数

扇出一个模块直接调用的其他模块数

原子模块树中位于叶子节点的模块

3、面向数据流的设计方法

任何软件系统都可以用数据流图表示,典型的数据流类型有两种:变

换型和事务型。

变换型系统结构图由输入、中心变换、输出三部分组成。

4、设计的准则

(1)提高模块独立性。

(2)模块规模适中。

(3)深度,宽度,扇出和扇入适当。如果深度过大,则说明有的控制模块可能简单了,如果宽度过大,则说明系统的控制过于集中,扇出过大说明模块过分复杂,需要控制和协调过多的下级模块,应适当加中间层次,扇出过小可以把模块进一步分解成若干小模块,或合并到上级模块中,扇入越大则共享该模块的上级数目越多。好的软件设计结构通常顶层高扇出,中间扇出较少,底层高扇入。

(4)使模块的作用域在该模块的控制域内。

(5)减少模块的接口和界面的复杂性。

(6)设计成单入口,单出口的模块。

(7)设计功能可预测的模块。

详细设计常用的设计工具(工程设计工具):图形工具,表格工具和语言工具。

图形工具:

程序流程图:箭头表示控制流,方框表示加工步骤,菱形表示逻辑条件。

N-S图:有五种基本图形。

PAD图:问题分析图,有五种基本图型。

计算机c语言二级考试复习资料

第一章C语言概述 一、选择题: 1、一个C程序的执行是从( A )。 A本程序的main函数开始,到main函数结束 B本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C本程序的main函数开始,到本程序文件的最后一个函数结束 D本程序文件的第一个函数开始,到本程序main函数结束 2、在 C 语言中,每个语句必须以( D )结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 3、C 语言规定:在一个源程序中,main函数的位置( C )。 A. 必须在最开始 B. 必须在系统调用的库函数的后面 C. 可以任意 D. 必须在最后 4、一个C 语言程序是由( B )。 A. 一个主程序和若干子程序组成 B. 函数组成 C. 若干过程组成 D. 若干子程序组成 5、下列说法中错误的是( D )。

A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 6、用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( C )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D. 自动保存源文件 二、填空题: 1、C 语言只有 32 个关键字和 9 种控制语句。 2、每个源程序有且只有一个 main 函数,系统总是从该函数开始执行C语言程序。 3、C 语言程序的注释可以出现在程序中的任何地方,它总是以 \* 符号作为开始标记,以 */ 符号作为结束标记。 4、C 语言中,输入操作是由库函数 scanf 完成的,输出操作是由库函 数 printf 完成的。 5、系统默认的C 语言源程序文件的扩展名是 .c ,经过编译后生成的目标文件的扩展名是 .obj ,经过连接后生成的可执行文件的扩展名是 .exe 。 6、C 语言的标识符只能由字母、数字和下划线三种字符组成。 第三章数据类型、运算符和表达式

全国计算机等级考试二级C语言真题

2009年3月二级C语言笔试真题((1)—(10)每小题2分,(11)—(50)每题1分,共60分) 下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。 (1)下列叙述中正确的是 A)栈是“先进先出”的线性表 B)队列是“先进先出”的线性表 C)循环队列是非线性结构 D)有序性表既可以采用顺序存储结构,也可以采用链式存储结构 (2)支持子程序调用的数据结构是 A)栈B)树C)队列D)二叉树 (3)某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是 A)10B)8C)6D)4 (4)下列排序方法中,最坏情况下比较次数最少的是 A)冒泡排序 B)简单选择排序 C)直接插入排序 D)堆排序 (5)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是 A)编译软件 B)操作系统 C)教务管理系统 D)汇编程序 (6)下面叙述中错误的是 A)软件测试的目的是发现错误并改正错误 B)对被调试的程序进行“错误定位”是程序调试的必要步骤 C)程序调试通常也称为Debug D)软件测试应严格执行测试计划,排除测试的随意性 (7)耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是 A)提高耦合性降低内聚性有利于提高模块的独立性 B)降低耦合性提高内聚性有利于提高模块的独立性

C)耦合性是指一个模块内部各个元素间彼此结合的紧密程度D)内聚性是指模块间互相连接的紧密程度 (8)数据库应用系统中的核心问题是 A)数据库设计 B)数据库系统设计 C)数据库维护 D)数据库管理员培训 (9)有两个关系R,S如下: 由关系R通过运算得到关系S,则所使用的运算为 A)选择B)投影C)插入D)连接 (10)将E-R图转换为关系模式时,实体和联系都可以表示为A)属性B)键C)关系D)域 (11)以下选项中合法的标识符是 A)1-1B)1—1C)-11D)1-- (12)若函数中有定义语句:intk;,则 A)系统将自动给k赋初值0 B)这时k中值无定义 C)系统将自动给k赋初值-1 D)这时k中无任何值 (13)以下选项中,能用作数据常量的是 A)o115B)0118C))115L (14)设有定义:intx=2;,以下表达式中,值不为6的是A)x*=x+1 B)x++,2*x C)x*=(1+x)

计算机二级考试C语言练习题及答案

一、选择题 1). 下列叙述中正确的是( )。 A.调用printf( )函数时,必须要有输出项 B.使用putchar( )函数时,必须在之前包含头文件stdio.h C.在C语言中,整数可以以二进制、八进制或十六进制的形式输出 D.调节getchar( )函数读入字符时,可以从键盘上输入字符所对应的ASCII码 正确答案:B 答案解析:选项A,若printf函数没有输出项,且格式字符串中不含格式信息,则输出的是格式字符串本身,若格式字符串含有格式信息,运行时则出现错误提示;选项C,在C 语言中,整数可以十进制、八进制或十六进制的形式输出;选项D,getchar函数是从标准输入设备读取一个字符。 2). 以下结构体类型说明和变量定义中正确的是( ) A.typedef struct { int n; char c; } REC; REC t1,t2; B.struct REC ; { int n; char c; }; REC t1,t2; C.typedef struct REC; { int n=0; char c=′A′; } t1,t2; D.struct { int n; char c; } REC; REC t1,t2; 正确答案:A 答案解析:定义结构体类型的一般形式为:struct 结构体名 {成员列表};struct 结构体名后不能加″;″号,所以选项B、C)错误,选项D中定义无名称的结构体类型同时定义结构体变量形式应为struct t1,t2;选项A为用户自定义类型,其为正确的定义形式。 3). 若实体A和B是一对多的联系,实体B和C是一对一的联系,则实体A和C的联系是( ) A.一对一 B.一对多 C.多对一 D.多对多 正确答案:B 答案解析:由于B和C有一一对应的联系,而A和B只间有一对多的联系,则通过关系之间的传递,则A和C之间也是一对多的联系。 4). 关于C语言的变量,以下叙述中错误的是( ) A.所谓变量是指在程序运行过程中其值可以被改变的量 B.变量所占的存储单元地址可以随时改变 C.程序中用到的所有变量都必须先定义后才能使用 D.由三条下划线构成的符号名是合法的变量名 正确答案:B

计算机二级C语言测试题

(第一章) 1. 以下关于算法的描述不正确的是__________。 A. 任何一个问题,它的实现算法是唯一的 B. 描述算法常用的表达工具有流程图、N-S图、PAD图、伪码等 C. 算法的最终实现是计算机程序 D. 正确性和清晰易懂性是一个好算法的基本条件 2.下面是一个加法程序,指出存在的逻辑错误和语法错误。 /* 求整数a和b的和 */ main( ) { int a,b; a=8; b=2000; print("%d\n",a-b); } 3.在每个C程序中都必须包含有这样一个函数,该函数的函数名为__________。 A.main B. MAIN C. name D. function 4.以下叙述不正确的是__________。 A.C程序书写格式规定,一行内只能写一个语句 B.main()函数后面有一对花括号,花括号内的部分称为函数体 C.一个C程序必须有main()函数 D.C规定函数内的每个语句以分号结束 5.以下各标识符中,合法的用户标识符为_________。 A.A#C B.mystery C.main D.ab* 6.已知求解某问题的算法如下: ⑴输入a、b、c三个数。 ⑵将a和b比较,较大者放在a中,小者放在b中。 ⑶将a和c比较,较大者放在a中,小者放在c中。 ⑷将b和c比较,较大者放在b中,小者放在c中。 ⑸依次输出a、b、c。 请根据上述算法描述,把算法的功能表达出来。 【答案】把任意输入的三个数a、b、c按降序排列的顺序输出。 7.一个C语言程序可以包括多个函数,程序总是按照如下_________所描述的方式执行当前的程序。 A.从本程序的main()函数开始,到本程序文件的最后一个函数结束。 B.从本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。 C.从main()函数开始,到main()函数结束。 D.从本程序文件的第一个函数开始,到本程序main()函数结束。 8.以下叙述正确的是_________。 A.在C程序中,main()函数必须位于程序的最前面。 B.C程序的每行中只能写一条语句。 C.在对一个C程序进行编译的过程中,可发现注释中的拼写错误。 D.C语言本身没有输入输出语句。 答案: 1. A 2.语法错误是print, 应该为printf;逻辑错误是a-b,应该为a+b。 3.A 4.A 5.B 6.把任意输入的三个数a、b、c按降序排列的顺序输出。 7.C 8.D

计算机二级c语言历年真题及答案

计算机二级c语言历年真题及答案【篇一:国家计算机二级c语言历年真题及答案】 class=txt>c语言程序设计 (考试时间90分钟,满分100分) 一、选择题((1)—(10)、(21)—(40)每题2分,(11)—(20)每题1分,共70分) (1)下列数据结构中,属于非线性结构的是 a)循环队列 b) 带链队列 c) 二叉树 d)带链栈 (2)下列数据结果中,能够按照“先进后出”原则存取数据的是 a) 循环队列 b) 栈 c)队列 d)二叉树 (3)对于循环队列,下列叙述中正确的是 a)队头指针是固定不变的 b)队头指针一定大于队尾指针 c)队头指针一定小于队尾指针 d)队头指针可以大于队尾指针,也可以小于队尾指针 (4)算法的空间复杂度是指 a)算法在执行过程中所需要的计算机存储空间 b)算法所处理的数据量 c)算法程序中的语句或指令条数 d)算法在执行过程中所需要的临时工作单元数 (5)软件设计中划分模块的一个准则是 a) 低内聚低耦合 b) 高内聚低耦合 c) 低内聚高耦合 d) 高内聚高耦合 (6)下列选项中不属于结构化程序设计原则的是 a) 可封装 d) 自顶向下

c) 模块化 d) 逐步求精 (7)软件详细设计产生的图如下: 该图是 a) n-s图 b) pad图 c) 程序流程图 d) e-r图 (8)数据库管理系统是 a)操作系统的一部分 b) 在操作系统支持下的系统软件 c) 一种编译系统 d) 一种操作系统 (9)在e-r图中,用来表示实体联系的图形是 a) 椭圆图 b) 矩形 c) 菱形 d) 三角形 (10)有三个关系r,s和t如下: 其中关系t由关系r和s通过某种操作得到,该操作为 a) 选择 b) 投影 c) 交 d) 并 (11)以下叙述中正确的是 a)程序设计的任务就是编写程序代码并上机调试 b)程序设计的任务就是确定所用数据结构 c)程序设计的任务就是确定所用算法 d)以上三种说法都不完整 (12)以下选项中,能用作用户标识符的是 a)void b)8_8 c)_0_ d)unsigned (13)阅读以下程序

计算机二级考试考试题库操作题附答案

请在【答题】菜单下选择【进入考生文件夹】命令,并按照题目要求完成下面的操作。 注意:以下的文件必须保存在考生文件夹下 文慧是新东方学校的人力资源培训讲师,负责对新入职的教师进行入职培训,其PowerPoint演示文稿的制作水平广受好评。最近,她应北京节水展馆的邀请,为展馆制作一份宣传水知识及节水工作重要性的演示文稿。 节水展馆提供的文字资料及素材参见"水资源利用与节水(素材).docx",制作要求如下: 1. 标题页包含演示主题、制作单位(北京节水展馆)和日期(XXXX年X月X日) 2. 演示文稿须指定一个主题,幻灯片不少于5页,且版式不少于3种。 3. 演示文稿中除文字外要有2张以上的图片,并有2个以上的超链接进行幻灯片之间的跳转。 4. 动画效果要丰富,幻灯片切换效果要多样。 5. 演示文稿播放的全程需要有背景音乐。 6. 将制作完成的演示文稿以"水资源利用与节水.pptx"为文件名进行保存。 1.【解题步骤】 步骤1:首先打开Microsoft PowerPoint 2010,新建一个空白文档。 步骤2:新建第一页幻灯片。单击【开始】选项卡下【幻灯片】组中的"新建幻灯片"下拉按钮,在弹出的下拉列表中选择"标题幻灯片"命令。新建的第一张幻灯片便插入到文档中。 步骤3:根据题意选中第一张"标题"幻灯片,在"单击此处添加标题"占位符中输入标题名"北京节水展馆",并为其设置恰当的字体字号以及颜色。选中标题,在【开始】选项卡下【字体】组中的"字体"下拉列表中选择"华文琥珀"命令,在"字号"下拉列表中选择"60"命令,在"字体颜色下拉列表中选择"深蓝"命令。 步骤4:在"单击此处添加副标题"占位符中输入副标题名"XXXX年X月X日"。按照同样的方式为副标题设置字体为"黑体",字号为"40"。 2.【解题步骤】 步骤1:按照题意新建不少于5页幻灯片,并选择恰当的有一定变化的版式,至少要有3种版式。按照与新建第一张幻灯片同样的方式新建第二张幻灯片。此处我们选择"标题和内容"命令。 步骤2:按照同样的方式新建其他三张幻灯片,并且在这三张中要有不同于"标题幻灯片"以及"标题和内容"版式的幻灯片。此处,我们设置第三张幻灯片为"标题和内容",第四张为"内容与标题",第五张为"标题和内容"。 步骤3:为所有幻灯片设置一种演示主题。在【设计】选项卡下的【主题】组中,单击"其他"下三角按钮,在弹出的下拉列表中选择恰当的主题样式。此处我们选择"展销会"命令。 3.【解题步骤】 步骤1:依次对第二张至第五张的幻灯片填充素材中相应的内容。此处填充内容的方式不限一种,考生可根据实际需求变动。 步骤2: 根据题意,演示文稿中除文字外要有2张以上的图片。因此,我们来对演示文稿中相应的幻灯片插入图片。此处,我们选中第三张幻灯片,单击文本区域的"插入来自文件的图片"按钮,弹出"插入图片"对话框,选择图片"节水标志"后单击"插入"按钮即可将图片应用于幻灯片中。实际效果如图所示。 步骤3:选中第5张幻灯片,按照同样的方式插入图片"节约用水"。实际效果如图所示。 步骤4:根据题意,要有2个以上的超链接进行幻灯片之间的跳转。此处我们来对第二张幻灯片中的标题"水的知识"设置超链接,由此链接到第三张幻灯片中去。选中第二张幻灯片中"水的知识",在【插入】选项卡下的【链接】组中单击"超链接"按钮,弹出"插入超链接"对话框。单击"链接到"组中的"本文档中的位置"按钮,在对应的界面中选择"下一张幻灯片"命令。 步骤5:单击"确定"按钮后即可在图中看到实际效果。 步骤6:再按照同样的方式对第四张幻灯片中的标题"节水工作"设置超链接,由此链接到第五张幻灯片中去。 4.【解题步骤】 步骤1:按照题意,为幻灯片添加适当的动画效果。此处我们选择为第二张幻灯片中的文本区域设置动画效

全国计算机二级C语言操作题题库

1.程序Cmody021.c输出如下所示图形: * *** ***** ******* ********* #include void main() { int i,j;for(i=1;i<=5;i++) { for(j=1;j<=5-i;j++)printf(" "); for(j=1;j<=2*i-1;j++) printf("*"); printf("\n"); } } 2.程序Cmody032.c的功能是:输出201-300之间的所有素数,统计总个数。#include #include void main() { int num; printf("\n"); num=fun(); printf("\nThe total of prime is %d",num); getch(); } int fun() { int m,i,k,n=0; for(m=201;m<=300;m++) { k=sqrt(m+1); for(i=2;i<=k;i++) /**/if(m/i==0)/**/ break; /**/if(i==k)/**/ { printf("%-4d",m); n++;

if(n%10==0)printf("\n"); } } return n; } 3. 程序Cmody041.c,其功能是统计输入字符串中小写英文字母的个数。如输入:abcdEFGHIJK123 输出:4 #include #include main() { char str1[128]; /**/int i,len,sum=0;/**/ gets(str1); len=strlen(str1); for(i=0;i='a'&&str1[i]<='z')/**/ sum++; } printf("%d\n",sum); getch(); } 4.程序Cmody051.c,其功能是统计输入字符串中大写英文字母的个数。如输入:abcDEFGH123 输出:5 #include #include main() { /**/char str1[128]/**/ int i,len,sum=0; printf("Please input a string:\n"); scanf("%s",str1); len=strlen(str1); for(i=0;i='A'&&str1[i]<='Z') /**/sum++;/**/

全国计算机二级考试C语言(最全复习资料)

二级公共基础知识作为必考内容出现,出题形式为选择题前10道,占考试总分的10%。 考试其它比重: 1、C语言程序的结构占总分1% 2、数据类型及其运算占总分4% 3、选择结构程序设计占比分的3% 4、循环结构占比分的5% 5、数组的定义和引用占比分的5% 6、函数占比分的5% 7、编译预处理占比分1% 8、指针占比分的5% 9、结构体占比分的3% 10、位运算占比分的2% 11、文件操作占比分的2% 考试方式 上机考试,时长120分钟 单选题40分(含公共基础10分),操作题60分(包括程序填空题、程序修改题、程序设计题) 第一部分 C语言知识复习资料 第一章C语言基本知识(90分) 【考点1】C程序 用C语言编写的程序称为C语言源程序,源程序文件的后缀名为“.c”。源程序经编译后生成后缀名为“.obj”的目标文件,再把目标文件与各种库函数连接起来,生成“.exe”可执行文件。C语言有三种基本结构:顺序结构、选择结构、循环结构。

【考点2】main函数 又称主函数,是C程序的入口。main后面跟一对小括号和一对花括号,花括号括起来的部分称为main 函数的函数体。一个C程序从main函数开始执行,到main函数体执行完结束,而不论main函数在整个程序中的位置如何。每一个程序有且仅有一个main函数,其他函数都是为main函数服务的。 【考点3】存储形式 计算机在电脑中保存数据是采用二进制形式,由0或1构成的二进制称为位(bit),八个位构成一个字节(Byte),1个Byte=8个bit。二进制、八进制、十六进制转化为十进制采用乘法,十进制转化为二进制、八进制、十六进制采用除法。数据的存放位置就是它的地址。 【考点4】注释 是对程序的说明,可出现在程序中任意合适的地方,注释从“/*”开始到最近一个“*/”结束,其间任何内容都不会被计算机执行,注释不可以嵌套。 【考点5】书写格式 每条语句的后面必须有一个分号,分号是语句的一部分。一行内可写多条语句,一个语句可写在多行上。 【考点6】标识符 是标识名字的有效字符序列,可以理解为C程序中的单词。 标识符的命名规则是: (1)标识符只能由字母、数字和下划线组成,字母区分大小写。 (2)标识符的第一个字符必须是字母或下划线,不能为数字。 C语言标识符分如下3类 (1)关键字。它们在程序中有固定的含义,不能另作他用。如int、for、switch等。 (2)预定义标识符。预先定义并具有特定含义的标识符。如define、include等。 (3)用户标识符。用户根据需要定义的标识符,符合命名规则且不与关键字相同。 【考点7】常量与变量 常量是指在程序运行过程中,其值不能改变的量。常量分为整型常量、实型常量、字符常量、字符串常量、符号常量5种。在程序运行过程中其值可以改变的量称为变量。C语言中没有字符串变量。存放字符串使用字符数组。 【考点8】整型数据 整型常量有十进制、八进制、十六进制三种表示形式,没有二进制形式。八进制整型常量加前导数字0,十六进制常量加前导0X,八进制常量中不会出现8。 整型变量可分为基本整型(int)、短整型(short)、长整型(long)、和无符号整型(unsigned)。一个基本整型占4个字节。其它类型的整型占用字节数和取值范围详见教材第9页。 【考点9】实型数据 实型数据有两种表示形式:小数形式和指数形式。掌握判定指数形式合法性。 口诀:E前E后必有数,E后必须为整数。 实型变量分为单精度型(float)和双精度型(double),单精度型占四个字节。 【考点10】算术运算 算术运算符一共有+、—、*、/、%这五个。求余运算要求运算对象只能为整型,除法运算符两边运算对象都为整型时,运算结果也为整型即舍掉小数部分。 【考点11】强制类型转换 将一个运算对象转换成指定类型,格式为(类型名)表达式,注意小括号位置。 【考点12】赋值 赋值运算符为“=”,不同于关系等于“= =”。赋值表达式格式为:变量名=表达式,赋值运算符左边必须为变量,赋值运算是把赋值运算符右边表达式的值赋给左边变量。

计算机二级考试题目

Word 2010 高级应用综合操作题打开素材库中的“典型试题”文件,按下面的操作要求进行操作,并把操作结果存盘。 1.操作要求 (1)对正文进行排版。 ①使用多级符号对章名、小节名进行自动编号,代替原始的编号。要求: * 章号的自动编号格式为:第X 章(例:第1 章),其中:X 为自动排序,阿拉伯数字序号。对应级别1。居中显示。 *小节名自动编号格式为:,X为章数字序号,Y为节数字序号(例:),X、Y均为阿拉伯数字序号。对应级别2。左对齐显示。 ②新建样式,样式名为:“样式”+考生准考证号后5 位。其中: *字体:中文字体为“楷体” ,西文字体为“ Time New Roman ”,字号为“小四” 。 *段落:首行缩进2 字符,段前行,段后行,行距倍;两端对齐。其余格式,默认设置。 ③对正文中的图添加题注“图” ,位于图下方,居中。要求: *编号为“章序号” -“图在章中的序号” 。例如,第1 章中第2 幅图,题注编号为1-2。 *图的说明使用图下一行的文字,格式同编号。 *图居中。 ④对正文中出现“如下图所示”的“下图”两字,使用交叉引用。 *改为“图X-Y”,其中“ X-Y'为图题注的编号。 ⑤对正文中的表添加题注“表” ,位于表上方,居中。 *编号为“章序号” -“表在章中的序号” 。例如,第1 章中第1 张表,题注编号为1-1。 *表的说明使用表上一行的文字,格式同编号。 *表居中,表内文字不要求居中。 ⑥对正文中出现“如下表所示”中的“下表”两字,使用交叉引用。 *改为“表X-Y,其中“ X-Y'为表题注的编号。 ⑦对正文中首次出现“ Access'的地方插入脚注。 *添加文字“ Access是由微软发布的关联式数据库管理系统。”。 ⑧将②中的新建样式应用到正文中无编号的文字。不包括章名、小节名、表文字、表和图的题注、脚注。 (2)在正文前按序插入三节,使用Word 提供的功能,自动生成如下内容: ①第1 节:目录。其中:“目录”使用样式“标题1”,并居中;“目录”下为目录项。 ②第2 节:图索引。其中:“图索引”使用样式“标题1”,并居中;“图索引”下为图索引项。 ③第3 节:表索引。其中:“表索引”使用样式“标题1”,并居中;“表索引”下为表索引项。 (3)使用适合的分节符,对正文进行分节。添加页脚,使用域插入页码,居中显示。要求: ①正文前的节,页码采用“i ,ii』[,???”格式,页码连续。 ②正文中的节,页码采用“ 1,2,3,…”格式,页码连续。 ③正文中每章为单独一节,页码总是从奇数开始。 ④更新目录、图索引和表索引。

计算机二级C语言测试题及答案解析(一)

2016年计算机二级C语言测试题及答案解析(一)1.(A )是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 2.C语言程序从C 开始执行。 A、程序中第一条可执行语句 B、程序中第一个函数 C、程序中的main函数 D、包含文件中的第一个函数 3、以下说法中正确的是(C )。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B )。 A、C程序的工作过程是编辑、编译、连接、运行 B、C语言不区分大小写。 C、C程序的三种基本结构是顺序、选择、循环 D、C程序从main函数开始执行 5.下列正确的标识符是(C )。

B、a[i] C、a2_i D、int t 5~8题为相同类型题 考点:标识符的命名规则 只能由字母、数字、下划线构成 数字不能作为标识符的开头 关键字不能作为标识符 选项A中的“-”,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3) 6.下列C语言用户标识符中合法的是(B )。 A、3ax B、x C、case D、-e2 E)union 选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1); 7.下列四组选项中,正确的C语言标识符是(C )。 A、%x B、a+b C、a123

选项A中的“%”,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2) 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 选项B中的“\”,”$”,选项D中“>”,”#”,”.”,”-”不满足(1);选项C 中的while为关键字,不满足(3) 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是C 。 A、2.5 B、2 C、1 D、3 %为求余运算符,该运算符只能对整型数据进行运算。且符号与被模数相同。5%2=1;5%

最新计算机二级C 考试复习资料(全)

计算机二级C++考试复习资料(全) 一、C++概述 (一) 发展历史 1980年,Bjarne Stroustrup博士开始着手创建一种模拟语言,能够具有面向对象的程序设计特色。在当时,面向对象编程还是一个比较新的理念,Stroustrup博士并不是从头开始设计新语言,而是在C语言的基础上进行创建。这就是C++语言。 1985年,C++开始在外面慢慢流行。经过多年的发展,C++已经有了多个版本。为次,ANSI和ISO的联合委员会于1989年着手为C++制定标准。1994年2月,该委员会出版了第一份非正式草案,1998年正式推出了C++的国际标准。 (二) C和C++ C++是C的超集,也可以说C是C++的子集,因为C先出现。按常理说,C++编译器能够编译任何C程序,但是C和C++还是有一些小差别。 例如C++增加了C不具有的关键字。这些关键字能作为函数和变量的标识符在C 程序中使用,尽管C++包含了所有的C,但显然没有任何C++编译器能编译这样的C程序。 C程序员可以省略函数原型,而C++不可以,一个不带参数的C函数原型必须把void写出来。而C++可以使用空参数列表。 C++中new和delete是对内存分配的运算符,取代了C中的malloc和free。 标准C++中的字符串类取代了C标准C函数库头文件中的字符数组处理函数。 C++中用来做控制态输入输出的iostream类库替代了标准C中的stdio函数库。 C++中的try/catch/throw异常处理机制取代了标准C中的setjmp()和longjmp()函数。 二、关键字和变量 C++相对与C增加了一些关键字,如下: typename bool dynamic_cast mutable namespace static_cast using catch explicit new virtual operator false private template volatile const protected this wchar_t const_cast public throw friend true reinterpret_cast try bitor xor_e and_eq compl or_eq not_eq bitand 在C++中还增加了bool型变量和wchar_t型变量: 布尔型变量是有两种逻辑状态的变量,它包含两个值:真和假。如果在表达式中使用了布尔型变量,那么将根据变量值的真假而赋予整型值1或0。要把一个整型变量转换成布尔型变量,如果整型值为0,则其布尔型值为假;反之如果整型值为非0,则其布尔型值为真。布儿型变量在运行时通常用做标志,比如进行逻辑测试以改变程序流程。 #include iostream.h int main() { bool flag; flag=true; if(flag) cout< return 0; }

全国计算机等级考试二级MS-Office-高级操作题考点及步骤整理

全国计算机等级考试二级MS-Office-高级操作题考点及步骤整理

全国计算机等级考试二级MS-Office-高级操作题考点及步骤整理

WORD 根据示例图片对文档进行字体调整及内容排版(邀请函、海报、新闻、政府工作报告) ?字体、段落、行距、分页、页边距、装订线、主题图片、自动生成目录、超链接、注脚、繁简转换、另存pdf ?正文首行缩进标题不变(全选-右击样式里的“正文”样式-修改-格式-段落-正文文本首行缩进)?复制另一个Word样式到此文档(打开另一个文档-文件-选项-加载项-管理:模板-管理器-单击右侧“关闭文件”-“打开文件”选择需要编辑文档-选择需要复制的样式复制-关闭 ?软回车改成硬回车(替换^l成^p,即特殊符号里“手动换行符”到“段落标记”) ?对文字设域(插入-文档部件-域) ?提要栏(插入-文本框-XX型提要栏) ?表格:更改样式、边框、作图(插入图表再在弹出的excel里更改数据) ?封面(日期协同变化可以删除日期框改成文本框)?页眉页脚正文开始且奇偶页不同(先设置奇偶页不同-分页)、标题自动显示在页眉区(添加页眉-插入-文档部件-域-类别:链接和引用-StyleRef-标

题样式-从底部向顶部检索-确定) ?邮件合并功能制作内容相同、收件人不同的多份请柬,根据性别在后面添加先生或女士(先有excel 里的电子表格信息,再在word里邮件-开始邮件合并-信函-选择收件人-使用现有列表-选择excel里的工作表-确定-word里选择要替换的位置,点击“插入合并域”姓名-点击“规则域”-点击如果那么否则添加条件-“完成并合并”-编辑单个文档-全部-确定) ?只插入二级、三级标题(引用-目录-插入目录-选项-去掉目录级别里不需要的数字-确定) ?将文档中的表格内容保存至“表格”部件库(选中表格-插入-文档部件-将所选内容保存到文档部件库-更改名称,库为表格) EXCEL ?定义名称 ?数据透视表、分类汇总(需要先排序)、迷你折线图(定位在单元格-插入-迷你折线图-选择单行数据-确定)、分列(数据-固定列宽) ?将单元格日期“2013年1月20日”显示成“2013

计算机二级C语言考试内容

计算机二级 公共基础知识 基本要求 1.掌握算法的基本概念。 2.掌握基本数据结构及其操作。 3.掌握基本排序和查找算法。 4.掌握逐步求精的结构化程序设计方法。 5.掌握软件工程的基本方法,具有初步应用相关技术进行软件开发的能力。 6.掌握数据库的基本知识,了解关系数据库的设计。 考试内容 一、基本数据结构与算法 1.算法的基本概念;算法复杂度的概念和意义(时间复杂度与空间复杂度)。 2.数据结构的定义;数据的逻辑结构与存储结构;数据结构的图形表示;线性结构与非线性结构的概念。 3.线性表的定义;线性表的顺序存储结构及其插入与删除运算。 4.栈和队列的定义;栈和队列的顺序存储结构及其基本运算。 5.线性单链表、双向链表与循环链表的结构及其基本运算。 6.树的基本概念;二叉树的定义及其存储结构;二叉树的前序、中序和后序遍历。

7.顺序查找与二分法查找算法;基本排序算法(交换类排序,选择类排序,插入类排序)。 二、程序设计基础 1.程序设计方法与风格 2.结构化程序设计。 3.面向对象的程序设计方法,对象,方法,属性及继承与多态性。 三、软件工程基础 1.软件工程基本概念,软件生命周期概念,软件工具与软件开发环境。 2.结构化分析方法,数据流图,数据字典,软件需求规格说明书。 3.结构化设计方法,总体设计与详细设计。 4.软件测试的方法,白盒测试与黑盒测试,测试用例设计,软件测试的实施,单元测试、集成测试和系统测试。 5.程序的调试,静态调试与动态调试。 四、数据库设计基础 1.数据库的基本概念:数据库,数据库管理系统,数据库系统。 2.数据模型,实体联系模型及E―R图,从E―R图导出关系数据模型。 3.关系代数运算,包括集合运算及选择、投影、连接运算,数据库规范化理论。

计算机二级c语言题库及答案

2016年计算机二级c语言题库及答案 一、选择题(每小题1分,共40小题,共40分) 1.设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为( )。 或35 2.下列关于栈的叙述中,正确的是( )。 A.栈底元素一定是最后入栈的元素 B.栈操作遵循先进后出的原则 C.栈顶元素一定是最先入栈的元素 D.以上三种说法都不对 3.下列链表中,其逻辑结构属于非线性结构的是( )0、 A.双向链表 B.带链的栈 C.二叉链表 D.循环链表 4.在关系数据库中,用来表示实体间联系的是( )。 A.网状结构 B.树状结构 C.属性 D.二维表 5.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员。则实体部门和职员间的联系是( )。 :m联系 :n联系 :1联系 :l联系

6.右两个关系R和S如下: 则由关系R得到关系S的操作是( )。 A.自然连接 B.并 C.选择 D.投影 7.数据字典(DD)所定义的对象都包含于( )。 A.软件结构图 B.方框图 C.数据流图(DFD图) D.程序流程图 8.软件需求规格说明书的作用不包括( )。 A.软件设计的依据 B.软件可行性研究的依据 C.软件验收的依据 D.用户与开发人员对软件要做什么的共同理解 9.下面属于黑盒测试方法的是( )。 A.边界值分析 B.路径覆盖 C.语句覆盖 D.逻辑覆盖 10.下面不属于软件设计阶段任务的是( )。 A.制订软件确认测试计划 B.数据库设计 C.软件总体设计 D.算法设计 11.以下叙述中正确的是( )。 A.在C语言程序中,main函数必须放在其他函数的最前面 B.每个后缀为C的C语言源程序都可以单独进行编译 C.在C语言程序中,只有main函数才可单独进行编译

全国计算机等级考试二级笔试样卷C语言程序设计(含答案)

全国计算机等级考试二级笔试样卷C语言程序设计 【打印】【字体:大中小】【关闭】 一、选择题((1)~(10)、(21)~(40)每题2分,(11)~(20)每题2分,共70分) 下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。 (1)下列选项中不符合良好程序设计风格的是 A)源程序要文档化B)数据说明的次序要规范化 C)避免滥用goto语句D)模块设计要保证高耦合、高内聚 (2)从工程管理角度,软件设计一般分为两步完成,它们是 A)概要设计与详细设计B)数据设计与接口设计

C)软件结构设计与数据设计 D)过程设计与数据设计 (3)下列选项中不属于软件生命周期开发阶段任务的是 A)软件测试B)概要设计 C)软件维护 D)详细设计 (4)在数据库系统中,用户所见的数据模式为 A)概念模式B)外模式C)内模式D)物理模式 (5)数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和A)编码设计B)测试阶段C)运行阶段 D)物理设计 (6)设有如下三个关系表 R S T

下列操作中正确的是 A)T=R∩S B)T=R∪S C)T=R×S D)T=R/S (7)下列叙述中正确的是 A)一个算法的空间复杂度大,则其时间复杂度也必定大 B)一个算法的空间复杂度大,则其时间复杂度必定小 C)一个算法的时间复杂度大,则其空间复杂度必定小 D)上述三种说法都不对 (8)在长度为64的有序线性表中进行顺序查找,最坏情况下需要比较的次数为A)63 B)64 C)6 D)7 (9)数据库技术的根本目标是要解决数据的

全国计算机等级考试二级C语言考点(完整版)

C语言二级考点(完整版) 第一章…… C语言基础知识 第二章……顺序结构 第三章……选择结构 第四章. ……循环结构 第五章……函数 第六章……指针 第七章……数组与指针 第八章……数组与函数 第九章……字符串 第十章……结构体与共用体 第十一章……文件 第一章C语言基础知识 考点1. C语言程序的结构认识 本节通过一个简单的c程序例子,介绍c语言的基本构成、格式、以及良好的书写风格,使读者对c语言有个初步认识。 例1 计算两个整数之和的c程序: #include main() { int a,b,sum; /*定义变量a,b,sum为整型变量*/ a=20; /*把整数20赋值给整型变量a*/ b=15; /*把整数15赋值给整型变量b*/ sum=a+b; /*把两个数之和赋值给整型变量sum*/ printf("a=%d,b=%d,sum=%d\n",a,b,sum); /*把计算结果输出到显示屏上*/ } 重点说明: 1、任何一个c语言程序都必须包括以下格式: main() { } 这是c语言的基本结构,任何一个程序都必须包含这个机构。括号内可以不写任何内容,那么该程序将不执行任何结果。 2、main()----在c语言中称之为“主函数”,一个c程序有且仅有一个main函数,任何一个c程序总是从main函数开始执行,main函数后面的一对圆括号不能省略。 3、被大括号{ }括起来的内容称为main函数的函数体,这部分内容就是计算机要执行的内容。 4、在{ }里面每一句话后面都有一个分号(;),在c语言中,我们把以一个分号结尾的一句话叫做一个c语言的语句,分号是语句结束的标志。 5、printf(“a=%d,b=%d,sum=%d\n”,a,b,sum); ----通过执行这条c语言系统提供给我们直接使用的屏幕输出函数,用户即可看到运行结果,本程序运行后,将在显示器上显示如下结果: a=20,b=15,sum=35 6、#include 注意:(1)以#号开头(2)不以分号结尾

历年全国计算机二级C语言试题库完整

. . . . 参考 50道C 语言知识题 1.以下叙述中正确的是 A)用C 程序实现的算法必须要有输入和输出操作 B)用C 程序实现的算法可以没有输出但必须要有输入 C)用C 程序实现的算法可以没有输入但必须要有输出 D)用C 程序实现的算法可以既没有输入也没有输出 2.下列可用于C 语言用户标识符的一组是 A)void,define,WORDB)a3_3,_123,Car C)For,-abc,IFCaseD)2a,DO,sizeof 3.以下选项中可作为C 语言合法常量的是 A)-80B)-080C)-8e1.0D)-80.0e 4.若有语句:char*line[5];,以下叙述中正确的是 A)定义line 是一个数组,每个数组元素是一个基类型为char 为指针变量 B)定义line 是一个指针变量,该变量可以指向一个长度为5的字符型数组 C)定义line 是一个指针数组,语句中的*号称为间址运算符 D)定义line 是一个指向字符型函数的指针 5.以下定义语句中正确的是 A)inta=b=0;B)charA=65+1,b=′b′; 6.有以下程序段 charch;intk; ch=′a′; k=12; printf("%c,%d,",ch,ch,k);printf("k=%d\n",k); 已知字符a 的ASCII 码值为97,则执行上述程序段后输出结果是 A)因变量类型与格式描述符的类型不匹配输出无定值 B)输出项与格式描述符个数不符,输出为零值或不定值 C)a,97,12k=12 D)a,97,k=12 7.有以下程序 main() {inti,s=1; for(i=1;i<50;i++) if(!(i%5)&&!(i%3))s+=i; printf("%d\n",s);} 程序的输出结果是 A)409B)277C)1D)91 8.当变量c 的值不为2、4、6时,值也为"真"的表达式是 A)(c==2)||(c==4)||(c==6) B)(c>=2&&c<=6)||(c!=3)||(c!=5) C)(c>=2&&c<=6)&&!(c%2) D)(c>=2&&c<=6)&&(c%2!=1) 9.若变量已正确定义,有以下程序段

全国计算机等级考试二级C语言选择题

程序流程图中带有箭头的线段表示的是()。 A) 图元关系 B) 数据流 C) 控制流 D) 调用关系 参考答案:C 【解析】在数据流图中,用标有名字的箭头表示数据流。在程序流程图中,用标有名字的箭头表示控制流。所以选择C)。 结构化程序设计的基本原则不包括()。 A) 多态性 B) 自顶向下 C) 模块化 D) 逐步求精 参考答案:A 【解析】结构化程序设计的思想包括:自顶向下、逐步求精、模块化、限制使用goto语句,所以选择A)。 软件设计中模块划分应遵循的准则是()。 A) 低内聚低耦合 B) 高内聚低耦合 C) 低内聚高耦合 D) 高内聚高耦合 参考答案:B 【解析】软件设计中模块划分应遵循的准则是高内聚低偶合、模块大小规模适当、模块的依赖关系适当等。模块的划分应遵循一定的要求,以保证模块划分合理,并进一步保证以此为依据开发出的软件系统可靠性强,易于理解和维护。模块之间的耦合应尽可能的低,模块的内聚度应尽可能的高。 在软件开发中,需求分析阶段产生的主要文档是()。 A) 可行性分析报告 B) 软件需求规格说明书 C) 概要设计说明书 D) 集成测试计划 参考答案:B 【解析】A)错误,可行性分析阶段产生可行性分析报告。C)错误,概要设计说明书是总体设计阶段产生的文档。D)错误,集成测试计划是在概要设计阶段编写的文档。B)正确,需求规格说明书是后续工作如设计、编码等需要的重要参考文档。 算法的有穷性是指()。 A) 算法程序的运行时间是有限的 B) 算法程序所处理的数据量是有限的 C) 算法程序的长度是有限的 D) 算法只能被有限的用户使用

【解析】算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。有穷性是指算法程序的运行时间是有限的。 对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是()。 A) 快速排序 B) 冒泡排序 C) 直接插入排序 D) 堆排序 参考答案:D 【解析】除了堆排序算法的比较次数是,其他的都是n(n-1)/2。 下列关于栈的叙述正确的是()。 A) 栈按"先进先出"组织数据 B) 栈按"先进后出"组织数据 C) 只能在栈底插入数据 D) 不能删除数据 参考答案:B 【解析】栈是按"先进后出"的原则组织数据的,数据的插入和删除都在栈顶进行操作。 在数据库设计中,将E-R图转换成关系数据模型的过程属于()。 A) 需求分析阶段 B) 概念设计阶段 C) 逻辑设计阶段 D) 物理设计阶段 参考答案:C 【解析】E-R图转换成关系模型数据则是把图形分析出来的联系反映到数据库中,即设计出表,所以属于逻辑设计阶段。 有三个关系R、S和T如下: 由关系R和S通过运算得到关系T,则所使用的运算为()。 A) 并 B) 自然连接 C) 笛卡尔积 D) 交

相关主题
文本预览
相关文档 最新文档