搜档网
当前位置:搜档网 › 全国计算机等级考试二级C语言公共基础知识题例

全国计算机等级考试二级C语言公共基础知识题例

全国计算机等级考试二级C语言公共基础知识题例
全国计算机等级考试二级C语言公共基础知识题例

全国计算机二级考试公共基础复习知识120题(2010)

一、选择题

(1) 下面叙述正确的是______。(C)

A. 算法的执行效率与数据的存储结构无关

B. 算法的空间复杂度是指算法程序中指令(或语句)的条数

C. 算法的有穷性是指算法必须能在执行有限个步骤之后终止

D. 以上三种描述都不对

(2) 以下数据结构中不属于线性数据结构的是______。(C)

A. 队列

B. 线性表

C. 二叉树

D. 栈

(3) 在一棵二叉树上第5层的结点数最多是______。(B)

A. 8

B. 16

C. 32

D. 15

(4) 下面描述中,符合结构化程序设计风格的是______。(A)

A. 使用顺序、选择和重复三种基本控制结构表示程序的控制逻辑

B. 模块只有一个入口,可以有多个出口

C. 注重提高程序的执行效率

D. 不使用goto语句

(5) 下面概念中,不属于面向对象方法的是______。(D)

A. 对象

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)

A. 内模式

B. 外模式

C. 概念模式

D. 逻辑模式

(11) 算法的时间复杂度是指______。(C)

A. 执行算法程序所需要的时间

B. 算法程序的长度

C. 算法执行过程中所需要的基本运算次数

D. 算法程序中的指令条数

(12) 下列叙述中正确的是______。(A)

A. 线性表是线性结构

B. 栈与队列是非线性结构

C. 线性链表是非线性结构

D. 二叉树是线性结构

(13) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为______。(B)

A. 349

B. 350

C. 255

D. 351

(14) 结构化程序设计主要强调的是______。(B)

A. 程序的规模

B. 程序的易读性

C. 程序的执行效率

D. 程序的可移植性

(15) 在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是______。(D)

A. 概要设计

B. 详细设计

C. 可行性分析

D. 需求分析

(16) 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列

图符名不属于数据流图合法图符的是_____。(A)

A. 控制流

B. 加工

C. 数据存储

D. 源和潭

(17) 软件需求分析阶段的工作,可以分为四个方面:需求获取、需求分析、编写需求规格说明书以及______。(B)

A. 阶段性报告

B. 需求评审

C. 总结

D. 都不正确

(18) 下述关于数据库系统的叙述中正确的是______。(A)

A. 数据库系统减少了数据冗余

B. 数据库系统避免了一切冗余

C. 数据库系统中数据的一致性是指数据类型的一致

D. 数据库系统比文件系统能管理更多的数据

(19) 关系表中的每一横行称为一个______。(A)

A. 元组

B. 字段

C. 属性

D. 码

(20) 数据库设计包括两个方面的设计内容,它们是______。(A)

A. 概念设计和逻辑设计

B. 模式设计和内模式设计

C. 内模式设计和物理设计

D. 结构特性设计和行为特性设计

(21) 算法的空间复杂度是指______。(D)

A. 算法程序的长度

B. 算法程序中的指令条数

C. 算法程序所占的存储空间

D. 算法执行过程中所需要的存储空间

(22) 下列关于栈的叙述中正确的是______。(D)

A. 在栈中只能插入数据

B. 在栈中只能删除数据

C. 栈是先进先出的线性表

D. 栈是先进后出的线性表

(23) 在深度为5的满二叉树中,叶子结点的个数为______。(C)

A. 32

B. 31

C. 16

D. 15

(24) 对建立良好的程序设计风格,下面描述正确的是______。(A)

A. 程序应简单、清晰、可读性好

B. 符号名的命名要符合语法

C. 充分考虑程序的执行效率

D. 程序的注释可有可无

(25) 下面对对象概念描述错误的是______。(A)

A. 任何对象都必须有继承性

B. 对象是属性和方法的封装体

C. 对象间的通讯靠消息传递

D. 操作是对象的动态性属性

(26) 下面不属于软件工程的3个要素的是______。(D)

A. 工具

B. 过程

C. 方法

D. 环境

(27) 程序流程图(PFD)中的箭头代表的是______。(B)

A. 数据流

B. 控制流

C. 调用关系

D. 组成关系

(28) 在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的阶段是______。(A)

A. 数据库系统

B. 文件系统

C. 人工管理

D. 数据项管理

(29) 用树形结构来表示实体之间联系的模型称为______。(B)

A. 关系模型

B. 层次模型

C. 网状模型

D. 数据模型

(30) 关系数据库管理系统能实现的专门关系运算包括______。(B)

A

B

C

D

E

F

A. 排序、索引、统计

B. 选择、投影、连接

C. 关联、更新、排序

D. 显示、打印、制表

(31) 算法一般都可以用哪几种控制结构组合而成______。(D)

A. 循环、分支、递归

B. 顺序、循环、嵌套

C. 循环、递归、选择

D. 顺序、选择、循环

(32) 数据的存储结构是指______。(B)

A. 数据所占的存储空间量

B. 数据的逻辑结构在计算机中的表示

C. 数据在计算机中的顺序存储方式

D. 存储在外存中的数据

(33) 设有下列二叉树:

对此二叉树中序遍历的结果为______。(B)

A. ABCDEF

B. DBEAFC

C. ABDECF

D. DEBFCA

(34) 在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送______。(D)

A. 调用语句

B. 命令

C. 口令

D. 消息

(35) 检查软件产品是否符合需求定义的过程称为______。(A)

A. 确认测试

B. 集成测试

C. 验证测试

D. 验收测试

(36) 下列工具中属于需求分析常用工具的是______。(D)

A. PAD

B. PFD

C. N-S

D. DFD

(37) 下面不属于软件设计原则的是______。(C)

A. 抽象

B. 模块化

C. 自底向上

D. 信息隐蔽

(38) 索引属于______。(B)

A. 模式

B. 内模式

C. 外模式

D. 概念模式

(39) 在关系数据库中,用来表示实体之间联系的是______。(D)

A. 树结构

B. 网结构

C. 线性表

D. 二维表

(40) 将E-R图转换到关系模式时,实体与联系都可以表示成______。(B)

A. 属性

B. 关系

C. 键

D. 域

(41) 在下列选项中,哪个不是一个算法一般应该具有的基本特征______。(C)

A. 确定性

B. 可行性

C. 无穷性

D. 拥有足够的情报

(42) 希尔排序法属于哪一种类型的排序法______。(B)

A. 交换类排序法

B. 插入类排序法

C. 选择类排序法

D. 建堆排序法

(43) 下列关于队列的叙述中正确的是______。(C)

A. 在队列中只能插入数据

B. 在队列中只能删除数据

C. 队列是先进先出的线性表

D. 队列是先进后出的线性表

(44) 对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为______。(B)

A. N+1

B. N

C. (N+1)/2

D. N/2

(45) 信息隐蔽的概念与下述哪一种概念直接相关______。(B)

A. 软件结构定义

B. 模块独立性

C. 模块类型划分

D. 模拟耦合度

(46) 面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是______。

(C)

A. 模拟现实世界中不同事物之间的联系

B. 强调模拟现实世界中的算法而不强调概念

C. 使用现实世界的概念抽象地思考问题从而自然地解决问题

D. 鼓励开发者在软件开发的绝大部分中都用实际领域的概念去思考

(47) 在结构化方法中,软件功能分解属于下列软件开发中的阶段是______。(C)

A. 详细设计

B. 需求分析

C. 总体设计

D. 编程调试

(48) 软件调试的目的是______。(B)

A. 发现错误

B. 改正错误

C. 改善软件的性能

D. 挖掘软件的潜能

(49) 按条件f对关系R进行选择,其关系代数表达式为______。(C)

A. R|X|R

B. R|X|R f

C. бf(R)

D. ∏f(R)

(50) 数据库概念设计的过程中,视图设计一般有三种设计次序,以下各项中不对的是______。

(D)

A. 自顶向下

B. 由底向上

C. 由内向外

D. 由整体到局部

(51) 在计算机中,算法是指______。(C)

A. 查询方法

B. 加工方法

C. 解题方案的准确而完整的描述

D. 排序方法

(52) 栈和队列的共同点是______。(C)

A. 都是先进后出

B. 都是先进先出

C. 只允许在端点处插入和删除元素

D. 没有共同点

(53) 已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是______。

(A)

A. cedba

B. acbed

C. decab

D. deabc

(54) 在下列几种排序方法中,要求内存量最大的是______。(D)

A. 插入排序

B. 选择排序

C. 快速排序

D. 归并排序

(55) 在设计程序时,应采纳的原则之一是______。(A)

A. 程序结构应有助于读者理解

B. 不限制goto语句的使用

C. 减少或取消注解行

D. 程序越短越好

(56) 下列不属于软件调试技术的是______。(B)

A. 强行排错法

B. 集成测试法

C. 回溯法

D. 原因排除法

(57) 下列叙述中,不属于软件需求规格说明书的作用的是______。(D)

A. 便于用户、开发人员进行理解和交流

B. 反映出用户问题的结构,可以作为软件开发工作的基础和依据

C. 作为确认测试和验收的依据

D. 便于开发人员进行需求分析

(58) 在数据流图(DFD)中,带有名字的箭头表示______。

(C) A. 控制程序的执行顺序 B. 模块之间的调用关系 C. 数据的流向 D. 程序的组成成分

(59) SQL语言又称为______。(C)

A. 结构化定义语言

B. 结构化控制语言

C. 结构化查询语言

D. 结构化操纵语言

(60) 视图设计一般有3种设计次序,下列不属于视图设计的是______。(B)

A. 自顶向下

B. 由外向内

C. 由内向外

D. 自底向上 (61) 数据结构中,与所使用的计算机无关的是数据的______。(C)

A. 存储结构

B. 物理结构

C. 逻辑结构

D. 物理和存储结构

(62) 栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是____(D)。

A. ABCED

B. DBCEA

C. CDABE

D. DCBEA

(63) 线性表的顺序存储结构和线性表的链式存储结构分别是______。(B)

A. 顺序存取的存储结构、顺序存取的存储结构

B. 随机存取的存储结构、顺序存取的存储结构

C. 随机存取的存储结构、随机存取的存储结构

D. 任意存取的存储结构、任意存取的存储结构

(64) 在单链表中,增加头结点的目的是______。(A)

A. 方便运算的实现

B. 使单链表至少有一个结点

C. 标识表结点中首结点的位置

D. 说明单链表是线性表的链式存储实现

(65) 软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指______。(B)

A. 模块间的关系

B. 系统结构部件转换成软件的过程描述

C. 软件层次结构

D. 软件开发过程

(66) 为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为_(B)

A. PAD图

B. N-S图

C. 结构图

D. 数据流图

(67) 数据处理的最小单位是______。(C)

A. 数据

B. 数据元素

C. 数据项

D. 数据结构

(68) 下列有关数据库的描述,正确的是______。(D)

A. 数据库是一个DBF文件

B. 数据库是一个关系

C. 数据库是一组文件

D.数据库是一个结构化的数据集合

(69) 单个用户使用的数据视图的描述称为______。(A)

A. 外模式

B. 概念模式

C. 内模式

D. 存储模式

(70) 需求分析阶段的任务是确定______。(D)

A. 软件开发方法

B. 软件开发工具

C. 软件开发费用

D. 软件系统功能

(71) 算法分析的目的是______。(B)

A. 找出数据结构的合理性

B. 分析算法的效率以求改进

C. 分析算法的易懂性和可靠性

D.找出算法中输入和输出之间的关系

(72) n个顶点的强连通图的边数至少有______。(C)

A. n-1

B. n(n-1)

C. n

D. n+1

(73) 已知数据表A中每个元素距其最终位置不远,为节省时间,应采用的算法是______。(B)

A. 堆排序

B. 直接插入排序

C. 快速排序

D. 直接选择排序

(74) 用链表表示线性表的优点是______。(A)

A. 便于插入和删除操作

B. 数据元素的物理顺序与逻辑顺序相同

C. 花费的存储空间较顺序存储少

D. 便于随机存取

(75) 下列不属于结构化分析的常用工具的是______。(D)

A. 数据流图

B. 数据字典

C. 判定树

D. PAD图

(76) 软件开发的结构化生命周期方法将软件生命周期划分成______。(A)

A. 定义、开发、运行维护

B. 设计阶段、编程阶段、测试阶段

C. 总体设计、详细设计、编程调试

D. 需求分析、功能定义、系统设计

(77) 在软件工程中,白箱测试法可用于测试程序的内部结构。此方法将程序看做是______。

(C)

A. 循环的集合

B. 地址的集合

C. 路径的集合

D. 目标的集合

(78) 在数据管理技术发展过程中,文件系统与数据库系统的主要区别是数据库系统具有______。(D)

A. 数据无冗余

B. 数据可共享

C. 专门的数据管理软件

D. 特定的数据模型

(79) 分布式数据库系统不具有的特点是______。(B)

A. 分布式

B. 数据冗余

C. 数据分布性和逻辑整体性

D. 位置透明性和复制透明性

(80) 下列说法中,不属于数据模型所描述的内容的是______。(C)

A. 数据结构

B. 数据操作

C. 数据查询

D. 数据约束二:填空题

(1) 算法的复杂度主要包括______________复杂度和空间复杂度。(时间)

(2) 数据的逻辑结构在计算机存储空间中的存放形式称为数据的______________。(模式#逻辑模式#概念模式)

(3) 若按功能划分,软件测试的方法通常分为白盒测试方法和______________测试方法。(黑盒)

(4) 如果一个工人可管理多个设施,而一个设施只被一个工人管理,则实体"工人"与实体"设备"之间存在_________联系。(一对多#1:N#1:n)(5) 关系数据库管理系统能实现的专门关系运算包括选择、连接和______________。(投影)(6) 在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可以分为三种:前序遍历、______________遍历和后序遍历。(中序)(7) 结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、______________和限制使用goto语句。(模块化)(8) 软件的调试方法主要有:强行排错法、___________________和原因排除法。(回溯法)(9) 数据库系统的三级模式分别为______________模式、内部级模式与外部级模式。(概念#概念级)(10) 数据字典是各类数据描述的集合,它通常包括5个部分,即数据项、数据结构、数据流、______________和处理过程。(数据存储)

(11) 设一棵完全二叉树共有500个结点,则在该二叉树中有______________个叶子结点。(250)

(12) 在最坏情况下,冒泡排序的时间复杂度为____________________________。(n(n-1)/2#n*(n-1)/2#O(n(n-1)/2)#O(n*(n-1)/2)) (13) 面向对象的程序设计方法中涉及的对象是系统中用来描述客观事物的一个______________。(实体)

(14) 软件的需求分析阶段的工作,可以概括为四个方面:______________、需求分析、编写需求规格说明书和需求评审。(需求获取) (15) _____________是数据库应用的核心。 (数据库设计) (16) 数据结构包括数据的_____________结构和数据的存储结构. ( 逻辑)

(17) 软件工程研究的内容主要包括:______________技术和软件工程管理。(软件开发)

(18) 与结构化需求分析方法相对应的是______________方法。 (结构化设计)

(19) 关系模型的完整性规则是对关系的某种约束条件,包括实体完整性、______________和自定义完整性。 (参照完整性) (20) 数据模型按不同的应用层次分为三种类型,它们是______________数据模型、逻辑数据模型和物理数据模型。(概念) (21) 栈的基本运算有三种:入栈、退栈和______________。(读栈顶元素#读栈顶的元素#读出栈顶元素) (22) 在面向对象方法中,信息隐蔽是通过对象的______________性来实现的。 (封装)

(23) 数据流的类型有______________和事务型。(变换型) (24) 数据库系统中实现各种数据管理功能的核心软件称为______________。 (数据库管理系统#DBMS)

(25) 关系模型的数据操纵即是建立在关系上的数据操纵,一般有______________、增加、删除和修改四种操作。(查询) (26) 实现算法所需的存储单元多少和算法的工作量大小分别称为算法的______________。 (空间复杂度和时间复杂度)

(27) 数据结构包括数据的逻辑结构、数据的______________以及对数据的操作运算。(存储结构)

(28) 一个类可以从直接或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的______________。(可重用性)

(29) 面向对象的模型中,最基本的概念是对象和______________。 (类)

(30) 软件维护活动包括以下几类:改正性维护、适应性维护、______________维护和预防性维护。 (完善性)

(31) 算法的基本特征是可行性、确定性、______________和拥有足够的情报。(有穷性)

(32) 顺序存储方法是把逻辑上相邻的结点存储在物理位置______________的存储单元中。 (相邻)

(33) Jackson结构化程序设计方法是英国的M.Jackson提出的,它是一种面向______________的设计方法。 (数据结构)

(34) 数据库设计分为以下6个设计阶段:需求分析阶段、______________、逻辑设计阶段、物理设计阶段、实施阶段、运行和维护阶段。

(概念设计阶段#数据库概念设计阶段) (35) 数据库保护分为:安全性控制、______________、并发性控制和数据的恢复。(完整性控制)

(36) 测试的目的是暴露错误,评价程序的可靠性;而______________的目的是发现错误的位置并改正错误。 (调试)

(37) 在最坏情况下,堆排序需要比较的次数为______________。(O(nlog2n))

(38) 若串s="Program",则其子串的数目是______________。(29) (39) 一个项目具有一个项目主管,一个项目主管可管理多个项目,则实体"项目主管"与实体"项目"的联系属于_____的联系.(1对多#1:N)

(40) 数据库管理系统常见的数据模型有层次模型、网状模型和______________三种。 (关系模型)

全国计算机等级考试二级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语言公共基础知识

计算机二级C语言公共基础知识手册 1.算法的时间复杂度是指执行算法所需要的计算工作量.算法的工作量由算法所执行的基本运算次数来度量,而算法所执行的基本运算次数是问题规模的函数. 2.算法的空间复杂度是指算法执行过程中所需要的存储空间,存储空间包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行过程中所需要的额外空间. 3.一个算法通常由两种基本要素组成:一是对数据对象的运算和操作;而是算法的控制结构. 4算法设计基本方法主要包括有列举法、归纳法、递推、递归和减半递推技术. 5.数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构(也称数据的物理结构).、 6.数据处理是指对数据集合中的各元素以各种方式进行运算,包括插入、删除、查找、更改等运算,也包括对数据元素进行分析. 7.数据元素是指相互有关联的数据元素的集合. 8.前驱和后继关系是数据元素之间的一个基本关系,但前驱个后继关系所表示的实际意义随具体对象的不同而不同.一般说来,数据元素之间的任何关系都可以用前驱和后继关系来描述. 9.常用的存储结构有顺序链接、索引等存储结构.而采用不同的存储结构,其数据处理的效率是不同的.

10.在数据结构中,没有前驱的结点称为根结点;没有后继的结点称为终端结点(叶子结点);数据结构中除了根结点与终端结点外的其他结点一般称为内部结点. 11.在数据结构中,结点几结点的相互关系有线性结构和非线性结构. 12.线性结构(线性表):非空数据结构满足(1)有且只有一个根结点;(2)每个结点最多有一个前驱,也最多有一个后继. 在一个线性结构中插入或删除任何一个结点后还应该是线性结构,若删除或插入后不是线性结构,则该数据结构不能称为线性结构. 13.线性表是最简单、最常用的一种数据结构.有一组数据元素组成.在稍微复杂的线性表中,一个数据元素可以由若干个数据项组成,在这种情况下,常把数据元素称为记录,含有大量记录的线性表就称作文件. 14.非空线性表如与如下结构特征(1)有且只有一个根结点A1,它无前驱;(2)有且只有一个终端结点AI,它无后继;(3)除根结点与终端结点外,其他所有结点有且只有一个前驱,也只有一个后继.线性表中结点的个数N称为线性表的长度.当 N=0时,称其为空表. 15.在计算机中存放线性表,一种最简单的方法是顺序存储,也称顺序分配. 16.线性表的顺序存储结构具有以下两种基本特点:(1)线性表中所有元素所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的. 在线性表的存储结构中,其前后继两个元素在存 储空间中是紧邻的,且前驱元素一定存储在后继元素的前面. 17.假设线性表中第一个数据元素的存储地址是ADR(AI),每一个数据元素占K 个字节,则线性表中第I个元素AI在计算机存储空间中的存储地址是 ADR(AI)=ADR(A1)+(I-1)K.

国家二级C语言公共基础知识要点及历年真题

1算法 1.1 算法的基本概念 1.算法的概念(必记): 算法是指解题方案的准确而完整的描述。 分析:要用计算机实现某一任务时,先应设计出一整套解决问题的指导方案,然后具体实现。整套的指导方 案称之为算法,而具体的实现称之为程序。并且在设计指导方案时,可不用过多考虑到实现程序的具体细节(即可以一点点的理想化),但在程序实现时,必须受到具体环境的约束(现实不同于理想)。 结论:算法不等于程序,也不等于计算方法,程序的编制不可能优于算法的设计。 2.算法的基本特征(必记): a.可行性:由于算法总是在某个特定的计算工具上实现并执行的,因而受到计算工具的限制,所以在设计算法时,要考虑到设计的算法是否是可性的。 b.确定性:算法中的每一个步骤都必须是有明确定义的,不允许有模棱两可的解释,也不允许有多义性。 c.有穷性:算法必须能在有限的时间内做完,即算法必须能在执行有限个步骤之后终止。 d.拥有足够的情报:算法有相应的初始数据。 3.算法的基本要素: 一个算法通常由两个基本要素所组成:一是对数据对象的运算和操作,二是算法的控制结构。 基本运算和操作分为四类: a. 算术运算: (加、减、乘、除等运算) b. 逻辑运算: (与、或、非等运算) c. 关系运算: (大于、小于、等于、不等于等运算) d. 数据传输: (赋值、输入、输出等操作) 算法的控制结构: 算法中各操作之间的执行顺序称之为算法的控制结构。一个算法一般都可以用顺序、选择、循环三种基本控 制结构组合而成。 注意:一个计算机系统能执行的所有指令的集合,称为该计算机系统的指令系统。 4.算法设计基本方法: 列举法、归纳法、递推、递归、减半递推技术、回溯法。 1.2 算法的复杂度 (必记) 算法的复杂度主要包括时间复杂度和空间复杂度。 1.算法的时间复杂度: 是指执行算法所需要的计算工作量,是由算法所执行的基本运算次数来度量。 可用平均性态和最坏情况两种分析方法。其中平均性态分析是指用各种特定输入下的基本运算次数的加权平 均值来度量算法的工作量;而最坏情况分析是指在所有特定输入下的基本运算次数据的最大次数。 2.算法的空间复杂度: 一个算法的空间复杂度,是指执行这个算法所需要的内存空间。包含有三部分所组成:算法程序所占的空间 +输入的初始数据所占的存储空间+算法执行过程中所需要的额外空间。 历届的考题: 1、算法具有五个特性,以下选项中不属于算法特性的是(______) [2005.4] A)有穷性B)简洁性C)可行性D)确定性 2、问题处理方案的正确而完整的描述称为______。[2005.4] 3、下列叙述中正确的是________。[2006.9] A)一个算法的空间复杂度大,则其时间复杂度也必定大

全国计算机二级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语言公共基础知识

二级公共基础知识总结 第一章数据结构与算法 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代表每个元素占的字节数。顺序表的运算:插入、删除。 (4)1.4 栈和队列栈是限定在一端进行插入与删除的线性表,允许

计算机二级c语言公共基础知识(免费的)

计算机二级C语言的二级共公基础知识教程 第一章数据结构与算法 1.1 算法 算法:是指解题方案的准确而完整的描述。 算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。 算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。特征包括: (1)可行性; (2)确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性; (3)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义; (4)拥有足够的情报。 算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。 指令系统:一个计算机系统能执行的所有指令的集合。 基本运算和操作包括:算术运算、逻辑运算、关系运算、数据传输。 算法的控制结构:顺序结构、选择结构、循环结构。 算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。算法复杂度:算法时间复杂度和算法空间复杂度。 算法时间复杂度是指执行算法所需要的计算工作量。 算法空间复杂度是指执行这个算法所需要的内存空间。 1.2 数据结构的基本基本概念

数据结构研究的三个方面: (1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构; (3)对各种数据结构进行的运算。 数据结构是指相互有关联的数据元素的集合。 数据的逻辑结构包含: (1)表示数据元素的信息; (2)表示各数据元素之间的前后件关系。 数据的存储结构有顺序、链接、索引等。 线性结构条件: (1)有且只有一个根结点; (2)每一个结点最多有一个前件,也最多有一个后件。 非线性结构:不满足线性结构条件的数据结构。 1.3 线性表及其顺序存储结构 线性表由一组数据元素构成,数据元素的位臵只取决于自己的序号,元素之间的相对位臵是线性的。 在复杂线性表中,由若干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件。 非空线性表的结构特征: (1)且只有一个根结点a1,它无前件; (2)有且只有一个终端结点an,它无后件;

历年全国计算机二级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语言公共基础知识

计算机公共基础部分知识归纳 第一章数据结构与算法 算法---是一组严谨地定义运算顺序的规则 算法的基本要素---一是对数据对象的运算和操作,二是算法的控制结构 算法设计基本方法---列举法、归纳法、递推、递归、减半递推 算法的复杂度---包括时间复杂度和空间复杂度 时间复杂度---执行算法所需的计算工作量 空间复杂度---执行算法所需的内存空间 数据结构---相互有关联的数据元素的集合。如春、夏、秋、冬;18、11、35、23、16。。。; 父亲、儿子、女儿等都是数据元素。 前件---数据元素之间的关系,如父亲是儿子和女儿的前件 后件---如儿子是父亲的后件 结构---指数据元素之间的前后件关系 数据的逻辑结构—是指反映数据元素之间逻辑关系,而与它们在计算机中的存储位置无关数据的存储结构(物理结构)---数据的逻辑结构在计算机存储空间中的存放形式,数据元素 在计算机存储空间的位置关系可能与逻辑关系不同。 根据数据结构中各数据元素之间前后件关系的复杂程度,可将数据结构分两类---线性结构与 非线性结构 线性结构(线性表)---满足下列两个条件(1)有且只有一个根结点(2)每一个结点最多有 一个前件和后件。则称该数据结构为线性结构,否则为非线 性结构。 线性表是最简单、最常用的一种数据结构,其数据元素之间的相对位置是线性的,其存储方 式为顺序存储的,如数组 栈---是限定在一端进行插入与删除的线性表,一端封闭,另一端开口,其操作原则是“先进 后出”,栈的运算有入栈、退栈、读栈顶元素 队列---是指在一端进行插入(称为队尾)而在另一端进行删除(称为队头)的线性表,其操 作规则是“先进先出”,其运算有入队和退队。 树---是一种简单的非线性结构,而且是层次结构,是倒立的大树,有根结点、父结点、子结 点、叶子结点。根结点在第一层,一个结点所拥有的后件的 个数称为该结点的度,所有结点中最大的度称为树的度, 树的最大层次称为树的深度。 二叉树---(1)非空二叉树只有一个根结点(2)每一个结点最多有两棵子树(左子树和右子 树),其存储结构为链式。 二叉树性质---(1)K层上最多有2(K-1)个结点(2)深度为m的二叉树最多有2m-1个结点(3)度为0的结点(叶子结点)比度为2的结点多一个(4)具有n个结点的 二叉树,其深度至少为[Log2n]+1,其中[Log2n]表示对Log2n 取整 满二叉树---除最后一层外,其余层的结点都有两个子结点 完全二叉树---除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的 若干结点,叶子结点只可能在层次最大的两层上出现。满二 叉树是完全二叉树,而完全二叉树不是满二叉树。完全二叉 树有两个性质:(1)具有n个结点的完全二叉树的深度为

全国计算机二级考试公共基础知识题库

全国计算机二级考试公共基础知识题库 习题一 (1) 在下列选项中,哪个不是一个算法一般应该具有的基本特征______。(C) A. 确定性 B. 可行性 C. 无穷性 D. 拥有足够的情报 (2) 希尔排序法属于哪一种类型的排序法______。(B) A. 交换类排序法 B. 插入类排序法 C. 选择类排序法 D. 建堆排序法 (3) 下列关于队列的叙述中正确的是______。(C) A. 在队列中只能插入数据 B. 在队列中只能删除数据 C. 队列是先进先出的线性表 D. 队列是先进后出的线性表 (4) 对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为______。(B) A. N+1 B. N C.(N+1)/2 D. N/2 (5) 信息隐蔽的概念与下述哪一种概念直接相关______。(B)

A. 软件结构定义 B. 模块独立性 C. 模块类型划分 D. 模拟耦合度 (6) 面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是______。(C) A. 模拟现实世界中不同事物之间的联系 B. 强调模拟现实世界中的算法而不强调概念 C. 使用现实世界的概念抽象地思考问题从而自然地解决问题 D. 鼓励开发者在软件开发的绝大部分中都用实际领域的概念去思考 (7) 在结构化方法中,软件功能分解属于下列软件开发中的阶段是______。(C) A. 详细设计 B. 需求分析 C. 总体设计 D. 编程调试 (8) 软件调试的目的是______。(B) A. 发现错误 B. 改正错误 C. 改善软件的性能 D. 挖掘软件的潜能 (9) 按条件f对关系R进行选择,其关系代数表达式为______。(C) A. R|X|R B. R|X|R C. бf(R)

二级c公共基础知识及练习题库.doc

二级C公共基础知识及例题 1.1数据结构与算法 1丄1算法 1.算法的概念 (1)概念:算法是指一系列解决问题的清晰指令. (2)4个基本特征:可行性、确定性、有穷性、拥有足够的情报。 (3)两种基本要素:对数据对象的运算和操作、算法的控制结构(运算和操作时间顺序) (4)设计的基木方法:列举法、归纳法、递推法、递归法、减半递推技术和冋溯法。 2.算法的复杂度 (1)算法的时问复杂度:执行算法所需要的计算王作量。 (2)算法的空间复杂度:执行算法所需的内存空问。 1. 1. 2数据结构的基木概念 数据结构指相互有关联的的数据元素的集合,即数据的组织形式。其屮逻辑结构反映数据元素Z间逻辑关系;存储结构为数据的逻笹结构在计算机存储空间中的存放形式,有顺序存储、链式存储、索引存储和散列存储4种方式。数据结构按各种元素之间的前示件的关系的复杂度可划分为:(1)线性结构:有且只有一个根节点,且每个节点最多有一个直接前驱和一个直接后继的非空数据结构。 (2)非线性结构:不满足线性结构的数据结构。 1. 1. 3线性表及其顺序存储结构 1.线性表的基木概念 线性结构乂称线性表,线性表是最简单也是最常用的一种数据结构。 2.线性表的顺序存储结构 ?元素所占的存储空间必须连续。 ?元素在存储空间的位置是按逻辑顺序存放的。 3?线性表的插入运算 在第i个元索Z前插入一个新元素的步骤如下: 步骤一:把原来第n个节点至第i个节点依次往后移一个元索位置。 步骤二:把新节点放在第i个位置上。 步骤三:修正线性表的节点个数。 4.线性表的删除运算 删除第i个位置的元索的步骤如下: 步骤一:把第i个元索Z后的不包括第i个元素的n-i个元索依次前移一个位置; 步骤二:修正线性表的结点个数。 1. 1. 4栈和队列 1.栈及其基木运算 (1)基木概念:栈是一种特殊的线性表,其插入运算与删除运算都只在线性表的一端进行,也被称为“先进后出"表或,后进先出”表。 ?栈顶:允许插入与删除的一端。 ?栈底:栈顶的另一端。(不允许插入与删除的一端) ?空栈:栈屮没有元素的栈。 (2)特点。 ?栈顶元索是最示被插入和最早被删除的元索。 ?栈底元素是最早被插入和最后被删除的元素。 ?栈有记忆作用。

C语言公共基础知识

C语言公共基础知识标准化文件发布号:(9312-EUATWW-MWUB-WUNN-INNUL-DQQTY-

第一部分公共基础部分知识归纳 数据结构与算法 算法---是一组严谨地定义运算顺序的规则 算法的基本要素---一是对数据对象的运算和操作,二是算法的控制结构 算法设计基本方法---列举法、归纳法、递推、递归、减半递推 算法的复杂度---包括时间复杂度和空间复杂度 时间复杂度---执行算法所需的计算工作量 空间复杂度---执行算法所需的内存空间 数据结构---相互有关联的数据元素的集合。如春、夏、秋、冬;18、11、35、23、16。。。;父亲、儿子、女儿等都是数据元素。 前件---数据元素之间的关系,如父亲是儿子和女儿的前件 后件---如儿子是父亲的后件 结构---指数据元素之间的前后件关系 数据的逻辑结构—是指反映数据元素之间逻辑关系,而与它们在计算机中的存储位置无关 数据的存储结构(物理结构)---数据的逻辑结构在计算机存储空间中的存放形式,数据元素在计算机存储空间的位置关系可能与逻辑关系不同。 根据数据结构中各数据元素之间前后件关系的复杂程度,可将数据结构分两类---线性结构与非线性结构 线性结构(线性表)---满足下列两个条件(1)有且只有一个根结点(2)每一个结点最多有一个前件和后件。则称该数据结构为线性结构,否则为非线性结构。 线性表是最简单、最常用的一种数据结构,其数据元素之间的相对位置是线性的,其存储方式为顺序存储的,如数组 栈---是限定在一端进行插入与删除的线性表,一端封闭,另一端开口,其操作原则是“先进后出”,栈的运算有入栈、退栈、读栈顶元素 队列---是指在一端进行插入(称为队尾)而在另一端进行删除(称为队头)的线性表,其操作规则是“先进先出”,其运算有入队和退队。 树---是一种简单的非线性结构,而且是层次结构,是倒立的大树,有根结点、父结点、子结点、叶子结点。根结点在第一层,一个结点所拥有的后件的个数称为该结点的度,所有结点中最大的度称为树的度,树的最大层次称为树的深度。 二叉树---(1)非空二叉树只有一个根结点(2)每一个结点最多有两棵子树(左子树和右子树),其存储结构为链式。

全国计算机等级考试二级c语言公共基础知识总结

全国计算机等级考试二级c语言公共基础知识总结 第一章数据结构与算法 1.1 算法 算法:是指解题方案的准确而完整的描述。 算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。特征包括: (1)可行性; (2)确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解 释,不允许有多义性; (3)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义; (4)拥有足够的情报。 算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。 指令系统:一个计算机系统能执行的所有指令的集合。 基本运算包括:算术运算、逻辑运算、关系运算、数据传输。 算法的控制结构:顺序结构、选择结构、循环结构。 算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。 算法复杂度:算法时间复杂度和算法空间复杂度。 算法时间复杂度是指执行算法所需要的计算工作量。 算法空间复杂度是指执行这个算法所需要的内存空间。 1.2 数据结构的基本基本概念

数据结构研究的三个方面: (1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的 存储结构; (3)对各种数据结构进行的运算。 数据结构是指相互有关联的数据元素的集合。 数据的逻辑结构包含: (1)表示数据元素的信息; (2)表示各数据元素之间的前后件关系。 数据的存储结构有顺序、链接、索引等。 线性结构条件: (1)有且只有一个根结点; (2)每一个结点最多有一个前件,也最多有一个后件。 非线性结构:不满足线性结构条件的数据结构。 1.3 线性表及其顺序存储结构 线性表是由一组数据元素构成,数据元素的位置只取决于自己的序号,元素 之间的相对位置是线性的。 在复杂线性表中,由若干项数据元素组成的数据元素称为记录,而由多个记 录构成的线性表又称为文件。 非空线性表的结构特征: (1)且只有一个根结点a1,它无前件;

计算机二级C语言考试编程题题库

计算机c语言编程题库 1、求100之内自然数中最大的能被17整除的数。 void main() { int i; for(i=100;i>0;i--) if(i%17==0)break; printf("%d\n",i); } 2、已知a,b,c都是1位整数,求当三位整数abc、cba的和为1333时a、b、c的值。 void main() { int a,b,c; for(a=1;a<=9;a++) { for(b=0;b<=9;b++) { for(c=1;c<=9;c++) if(a*100+b*10+c+c*100+b*10+a==1333) printf("%d,%d,%d\n",a,b,c); } } } 3、计算并输出200-400之间不能被3整除的整数的和。 void main() { int i,sum=0; for(i=200;i<=400;i++) if(i%3!=0) sum=sum+i; printf("%d\n",sum); } 4、从键盘输入10个数,统计非负数的个数,并计算非负数的和。 void main() { int i,n=0,sum=0; int a[10]; printf(“请输入10个数:”);

for(i=0;i<10;i++) scanf(“%d”,&a[i]); for(i=0;i<10;i++) if(a[i]>=0) { sum=sum+a[i]; n++;} printf("非负个数是%d,sum=%d\n",n,sum); } 5、求100之内自然数中偶数之和。 void main() { int i,sum=0; for(i=0;i<=100;i++) if(i%2==0) sum=sum+i; printf("sum=%d\n",sum); } 6、输入5个数,求和并输出。要求编写求和的函数。 void main() { int b(int x[],int n); int sum=0; int a[5]; int i; printf("请输入5个数:"); for(i=0;i<5;i++) scanf("%d",&a[i]); sum=b(a,5); printf("sum=%d\n",sum); } int b(int x[],int n) { int i,sum=0; for(i=0;i<5;i++) sum=sum+x[i]; return sum; } 7、编程计算1*2*3+3*4*5+5*6*7+...+99*100*101的值。 void main() { int i,sum=0; for(i=1;i<=99;i=i+2) sum=sum+i*(i+1)*(i+2); printf("%d\n",sum); } 8、编写程序,将用户输入的字符串中所有的字符a用*代替,然后输出。void main()

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、Rear指针指向队尾,front指针指向队头。 3、先进先出FIFO,或者是后进后出LILO 2、循环队列里面的个数计算方法: 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 面向对象的程序设计 面向对象的程序设计:以对象为核心。 面向对象具备哪些基本概念: 对象、类和实例、消息、继承、多态性、 面向对象的程序设计方法中的对象是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位,由一组表示其静态特征的属性和它可执行的一组操作组成。

计算机二级C语言 公共基础知识教程

` 第1章数据结构与算法 §1.1 算法的复杂度 1. 算法的基本概念 ①.算法:即解题方案的准确而完整的描述【注意:算法不等于程序,也不等于计算方法,通常,程序的编制不可能优于算法的设计】 ②.利用计算机算法为计算机解题的过程实际上是在实施某种算法。 (1)算法的基本特征 算法一般具有4个基本特征:可行性、确定性、有穷性(包括精度要求确定的计算过程和合理的执行时间的含义)、拥有足够的情报。 (2)算法的基本要素 ①.对数据对象的运算和操作 计算机算法就是计算机能处理的操作所组成的指令序列。通常,计算机可以执行的基本操作是以指令的形式描述的,一个计算机系统能执行的所有指令的集合称为该计算机系统的指令系统。其中基本的运算和操作包括:算术运算、逻辑运算、关系运算、数据传输(赋值、输入、输出等)。 ②.控制结构:算法中各操作之间的执行顺序称为算法的控制结构。 ⅰ.描述算法的工具通常有:传统流程图、N—S结构化流程图、算法描述语言。 ⅱ.一个算法的3种基本控制结构:顺序结构、选择结构、循环结构。 (3)算法基本设计方法 算法基本设计方法:列举法、归纳法、递推(逐成分解)、递归、减半递推技术、回溯法。 2. 算法复杂度 算法复杂度包括时间复杂度和空间复杂度。注意两者的区别,不要混淆,见表1-1 §1.2 数据结构 1.2.1 逻辑结构和存储结构 1. 数据结构的基本概念 (1)数据结构:指相互有关联的数据元素的集合。 (2)数据处理:指对数据集合中的各元素以各种方式进行运算,包括插入、删除、查找、更改等运算、也包括对数据元素进行分析。 (3)数据结构研究的3个方面 ①.数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构; ②.在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构; ③.对各种数据结构进行的运算。 2. 数据的逻辑结构 数据的逻辑结构是对数据元素之间的逻辑关系的描述,它可以用一个数据元素的集合和定义在此集合中的若干关系来表示。数据的逻辑结构有两个要素:一是数据元素的集合,通常记为D;二是D上的关系,它反映了数据元素之间的前后件关系,通常记为R。一个数据结构可以表示成:B=(D,R) 其中,B表示数据结构。为了反映D中各数据元素之间的前后件关系,一般用二元组来表示。在数据处理领域中,通常把数据元素之间的这种固有的关系简单地用前后件关系(或直接前驱或直接后继关系)来描述。例如,假设a 与b是D中的;两个数据,则二元组(a,b)表示a是b的前件,b是a的后件 例如,如果把一年四季看作一个数据结构,则可表示成:B =(D,R)

计算机二级c语言题库

一、选择题 (1) 下面叙述正确的是(C) A. 算法的执行效率与数据的存储结构无关 B. 算法的空间复杂度是指算法程序中指令(或语句)的条数 C. 算法的有穷性是指算法必须能在执行有限个步骤之后终止 D. 以上三种描述都不对 (2) 以下数据结构中不属于线性数据结构的是(C) A. 队列 B. 线性表 C. 二叉树 D. 栈 (3) 在一棵二叉树上第5层的结点数最多是(B) 注:由公式2k-1得 A. 8 B. 16 C. 32 D. 15 (4) 下面描述中,符合结构化程序设计风格的是(A) A. 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑 B. 模块只有一个入口,可以有多个出口 C. 注重提高程序的执行效率 D. 不使用goto语句 (5) 下面概念中,不属于面向对象方法的是(D) 注:P55-58 A. 对象 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) 注:P108 A. 内模式 B. 外模式 C. 概念模式 D. 逻辑模式 (11) 算法的时间复杂度是指(C) A. 执行算法程序所需要的时间 B. 算法程序的长度 C. 算法执行过程中所需要的基本运算次数 D. 算法程序中的指令条数 (12) 算法的空间复杂度是指(D) A. 算法程序的长度 B. 算法程序中的指令条数 C. 算法程序所占的存储空间 D. 算法执行过程中所需要的存储空间 (13) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可求出 A. 349 B. 350 C. 255 D. 351 (14) 结构化程序设计主要强调的是(B) A.程序的规模 B.程序的易读性 C.程序的执行效率 D.程序的可移植性 (15) 在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是 (D) 注:即第一个阶段 A. 概要设计 B. 详细设计 C. 可行性分析 D. 需求分析 (16) 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是(A) 注:P67

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 数据结构的基本基本概念 数据:在计算机科学中指所有能输入到计算机中的并被计算机程序处理的符号的总称 数据元素:数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。 数据结构:是相互之间存在一种或多种特定关系的数据元素的集合数据结构研究的三个方面: (1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构; (2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;(3)对各种数据结构进行的运算。 数据结构是指相互有关联的数据元素的集合。 即:一般来说,人们不会同时处理特征完全不同且互相之间没有任何关系的各类数据元素,对于具有不同特征的数据元素总是分别进行处理。 1.数据的逻辑结构包含: (1)表示数据元素的信息; (2)表示各数据元素之间的前后件关系。其中数据元素之间的前后件关系是指它们的逻辑关系,与它们在计算机中的存储位置无关。

相关主题