2012安徽省C与数据结构链表最新考试试题库

合集下载

数据结构考试试题库含答案解析

数据结构考试试题库含答案解析

数据结构考试试题库含答案解析数据结构习题集含答案⽬录⽬录......................................................................................................... 错误!未定义书签。

选择题..................................................................................................... 错误!未定义书签。

第⼀章绪论.................................................................................................................. 错误!未定义书签。

第⼆章线性表............................................................................................................ 错误!未定义书签。

第三章栈和队列........................................................................................................ 错误!未定义书签。

第四章串.................................................................................................................... 错误!未定义书签。

第五章数组和⼴义表................................................................................................ 错误!未定义书签。

数据结构考试试题库含答案解析

数据结构考试试题库含答案解析

数据构造习题集含答案目录目录 (1)选择题 (2)第一章绪论 (2)第二章线性表 (4)第三章栈和队列 (6)第四章串 (7)第五章数组和广义表 (8)第六章树和二叉树 (8)第七章图 (11)第八章查找 (13)第九章排序 (14)简答题 (19)第一章绪论 (19)第二章线性表 (24)第三章栈和队列 (26)第四章串 (28)第五章数组和广义表 (29)第六章树和二叉树 (31)第七章图 (36)第八章查找 (38)第九章排序 (39)编程题 (41)第一章绪论 (41)第二章线性表 (41)第三章栈和队列 (52)第四章串 (52)第五章数组和广义表 (52)第六章树和二叉树 (52)第七章图 (52)第八章查找 (52)第九章排序 (57)选择题第一章绪论1.数据构造这门学科是针对什么问题而产生的?〔A〕A、针对非数值计算的程序设计问题B、针对数值计算的程序设计问题C、数值计算与非数值计算的问题都针对D、两者都不针对2.数据构造这门学科的研究内容下面选项最准确的是〔D〕A、研究数据对象和数据之间的关系B、研究数据对象C、研究数据对象和数据的操作D、研究数据对象、数据之间的关系和操作3.某班级的学生成绩表中查得X三同学的各科成绩记录,其中数据构造考了90分,那么下面关于数据对象、数据元素、数据项描述正确的选项是〔C〕A、某班级的学生成绩表是数据元素,90分是数据项B、某班级的学生成绩表是数据对象,90分是数据元素C、某班级的学生成绩表是数据对象,90分是数据项D、某班级的学生成绩表是数据元素,90分是数据元素4.*数据构造是指〔A〕。

A、数据元素的组织形式B、数据类型C、数据存储构造D、数据定义5.数据在计算机存储器内表示时,物理地址与逻辑地址不一样,称之为〔C〕。

A、存储构造B、逻辑构造C、链式存储构造D、顺序存储构造6.算法分析的目的是〔C〕A、找出数据的合理性B、研究算法中的输入和输出关系C、分析算法效率以求改良D、分析算法的易懂性和文档型性7.算法分析的主要方法〔A〕。

数据结构试题(含答案)讲解

数据结构试题(含答案)讲解

数据结构试题一、单选题1、在数据结构的讨论中把数据结构从逻辑上分为(C )A 内部结构与外部结构B 静态结构与动态结构C 线性结构与非线性结构D 紧凑结构与非紧凑结构。

2、采用线性链表表示一个向量时,要求占用的存储空间地址(D )A 必须是连续的B 部分地址必须是连续的C 一定是不连续的D 可连续可不连续3、采用顺序搜索方法查找长度为n的顺序表时,搜索成功的平均搜索长度为( D )。

A nB n/2C (n-1)/2D (n+1)/24、在一个单链表中,若q结点是p结点的前驱结点,若在q与p之间插入结点s,则执行( D )。

A s→link = p→link;p→link = s;B p→link = s; s→link = q;C p→link = s→link;s→link = p;D q→link = s;s→link = p;5、如果想在4092个数据中只需要选择其中最小的5个,采用( C )方法最好。

A 起泡排序B 堆排序C 锦标赛排序D 快速排序6、设有两个串t和p,求p在t中首次出现的位置的运算叫做( B )。

A 求子串B 模式匹配C 串替换D 串连接7、在数组A中,每一个数组元素A[i][j]占用3个存储字,行下标i从1到8,列下标j从1到10。

所有数组元素相继存放于一个连续的存储空间中,则存放该数组至少需要的存储字数是( C )。

A 80B 100C 240D 2708、将一个递归算法改为对应的非递归算法时,通常需要使用( A )。

A 栈B 队列C 循环队列D 优先队列9、一个队列的进队列顺序是1, 2, 3, 4,则出队列顺序为( C )。

10、在循环队列中用数组A[0..m-1] 存放队列元素,其队头和队尾指针分别为front和rear,则当前队列中的元素个数是( D )。

A ( front - rear + 1) % mB ( rear - front + 1) % mC ( front - rear + m) % mD ( rear - front + m) % m11、一个数组元素a[i]与( A )的表示等价。

c语言练习题6(数组与链表,有答案)

c语言练习题6(数组与链表,有答案)

c语言练习题6(数组与链表,有答案)1、(1)数据结构中,与所使用的计算机无关的是数据的_C_______。

A)存储结构B)物理结构C)逻辑结构D)物理和存储结构评析:数据结构概念一般包括3个方面的内容,数据的逻辑结构、存储结构及数据上的运算集合。

数据的逻辑结构只抽象的反映数据元素之间的逻辑关系,而不管它在计算机中的存储表示形式。

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

A)ABCED B)DBCEA C)CDABE D)DCBEA评析:栈操作原则上“后进先出”,栈底至栈顶依次存放元素A、B、c、D,则表明这4个元素中D是最后进栈,B、c处于中间,A最早进栈。

所以出栈时一定是先出D,再出c,最后出A。

3、线性表的顺序存储结构和线性表的链式存储结构分别是____B____。

A)顺序存取的存储结构、随机存取的存储结构B)随机存取的存储结构、顺序存取的存储结构C)随机存取的存储结构、随机存取的存储结构D)任意存取的存储结构、任意存取的存储结构评析:顺序存储结构中,数据元素存放在一组地址连续的存储单元中,每个数据元素地址可通过公式LOC(ai)。

LOC(a1)+(i-1)L计算得到,从而实现了随机存取。

对于链式存储结构,要对某结点进行存取,都得从链的头指针指向的结点开始,这是一种顺序存取的存储结构。

4、在单链表中,增加头结点的目的是____A__。

A)方便运算的实现B)使单链表至少有一个结点C)标识表结点中首结点的位置D)说明单链表是线性表的链式存储实现评析:头结点不仅标识了表中首结点的位置,而且根据单链表(包含头结点)的结构,只要掌握了表头,就能够访问整个链表,因此增加头结点目的是为了便于运算的实现。

5、数据处理的最小单位是___C_____。

A)数据B)数据元素C)数据项D)数据结构评析:数据处理的最小单位是数据项;由若干数据项组成数据元素;而数据是指能够被计算机识别、存储和加工处理的信息载体;数据结构是指数据之间的相互关系和数据运算。

2012年9月全国计算机的等级考试二级C语言笔试试卷答案详解及解析汇报汇报

2012年9月全国计算机的等级考试二级C语言笔试试卷答案详解及解析汇报汇报

(1)下列链表中,其逻辑结构属于非线性结构的是_________。

A)双向链表B) 带链的栈 C) 二叉链表D) 循环链表(1)C 【解析】见/uuxzhang上全国计算机二级考试参考资料_数据结构.pps 中第13张说明:链表存储结构是数据的存储结构;排除链表因素,从数据逻辑结构来看,线性结构包括线性表、栈和队;非线性结构包括树形结构和图形结构,所以二叉树是树形结构,即非线性结构。

(2)设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。

现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为A) 20 B) 0或35 C) 15 D) 16(2)B 【解析】见/uuxzhang上全国计算机二级考试参考资料_数据结构.pps中第100-101张关于入队(Q.rear=Q.rear+1)与退队(Q.front=Qfront+1)运算规则,此外第一次入队为Q.rear=1;第一次退队为Q.front=1。

并假定循环队列最大个数为maxsize,其相应存储空间为1: maxsize,则循环队列的入队与退队图例和运算后元素个数的确定原则如下:循环队列中的元素个数或称队列长度通用计算公式:(Q.rear-Q.front+ maxsize)% maxsize 例如,Q.rear=20,Q.front=15,则循环队列中的元素个数=(20-15+35)%35=5;Q.rear=40,Q.front=15,则循环队列中的元素个数=(40-15+35)%35=25;本题根据Q.rear=Q.front=15,maxsize=35,则循环队列中元素个数=(15-15+35)%35=0或35;(3)下列关于栈的叙述中,正确的是A) 栈底元素一定是最后入栈的元素B) 栈操作遵循先进后出的原则C) 栈顶元素一定是最先入栈的元素D) 以上三种说法都不对(3)B 【解析】见/uuxzhang上全国计算机二级考试参考资料_数据结构.pps中第63张幻灯片说明:栈元素入、退原则:先进后出(FILO)或后进先出(LIFO)。

2012安徽省全国计算机等级考试二级VB笔试试卷及参考答案考试技巧重点

2012安徽省全国计算机等级考试二级VB笔试试卷及参考答案考试技巧重点

1、数据的存储结构是指(B)A. 数据所占的存储空间量B. 数据的逻辑结构在计算机中的表示C. 数据在计算机中的顺序存储方式D. 存储在外存中的数据2、下列关于队列的叙述中正确的是(C)A. 在队列中只能插入数据B. 在队列中只能删除数据C. 队列是先进先出的线性表D. 队列是先进后出的线性表3、算法的时间复杂度是指(C)A. 执行算法程序所需要的时间B. 算法程序的长度C. 算法执行过程中所需要的基本运算次数D. 算法程序中的指令条数4、软件调试的目的是(B) 注:与软件测试要对比着复习A.发现错误B.改正错误C.改善软件的性能D.挖掘软件的潜能5、以下数据结构中不属于线性数据结构的是(C)A. 队列B. 线性表C. 二叉树D. 栈6、数据库设计包括两个方面的设计内容,它们是(A)A. 概念设计和逻辑设计B. 模式设计和内模式设计C. 内模式设计和物理设计D. 结构特性设计和行为特性设计7、在一棵二叉树上第5层的结点数最多是(B) 注:由公式2(k-1)得A. 8B. 16C. 32D. 158、下列工具中属于需求分析常用工具的是(D)A. PADB. PFDC. N-SD. DFD9、下列关于队列的叙述中正确的是(C)A. 在队列中只能插入数据B. 在队列中只能删除数据C. 队列是先进先出的线性表D. 队列是先进后出的线性表10、下列模式中,能够给出数据库物理存储结构与物理存取方法的是(A)A. 内模式B. 外模式C. 概念模式D. 逻辑模式11、下面描述中,符合结构化程序设计风格的是(A)A. 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B. 模块只有一个入口,可以有多个出口C. 注重提高程序的执行效率D. 不使用goto语句12、数据库设计包括两个方面的设计内容,它们是(A)A. 概念设计和逻辑设计B. 模式设计和内模式设计C. 内模式设计和物理设计D. 结构特性设计和行为特性设计13、在一棵二叉树上第5层的结点数最多是(B) 注:由公式2(k-1)得A. 8B. 16C. 32D. 1514、设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可求出A. 349B. 350C. 255D. 35115、下列工具中属于需求分析常用工具的是(D)A. PADB. PFDC. N-SD. DFD16、设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可求出A. 349B. 350C. 255D. 35117、希尔排序法属于哪一种类型的排序法(B)A.交换类排序法B.插入类排序法C.选择类排序法D.建堆排序法18、下列关于队列的叙述中正确的是(C)A. 在队列中只能插入数据B. 在队列中只能删除数据C. 队列是先进先出的线性表D. 队列是先进后出的线性表19、在结构化方法中,软件功能分解属于下列软件开发中的阶段是(C) 注:总体设计也就是概要设计A. 详细设计B. 需求分析C. 总体设计D. 编程调试20、软件调试的目的是(B) 注:与软件测试要对比着复习A.发现错误B.改正错误C.改善软件的性能D.挖掘软件的潜能21、在深度为5的满二叉树中,叶子结点的个数为(C)A. 32B. 31C. 16D. 1522、对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为(B) 注:要牢记A. N+1B. NC. (N+1)/2D. N/223、下列关于栈的叙述中正确的是(D)A. 在栈中只能插入数据B. 在栈中只能删除数据C. 栈是先进先出的线性表D. 栈是先进后出的线性表24、数据库设计包括两个方面的设计内容,它们是(A)A. 概念设计和逻辑设计B. 模式设计和内模式设计C. 内模式设计和物理设计D. 结构特性设计和行为特性设计25、用树形结构来表示实体之间联系的模型称为(B)A. 关系模型B. 层次模型C. 网状模型D. 数据模型26、在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(D)A. 概要设计B. 详细设计C. 可行性分析D. 需求分析27、下面概念中,不属于面向对象方法的是 (D)A. 对象B. 继承C. 类D. 过程调用28、数据的存储结构是指(B)A. 数据所占的存储空间量B. 数据的逻辑结构在计算机中的表示C. 数据在计算机中的顺序存储方式D. 存储在外存中的数据29、下列叙述中正确的是(A)A. 线性表是线性结构B. 栈与队列是非线性结构C. 线性链表是非线性结构D. 二叉树是线性结构30、数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。

数据结构C语言版期末考试试题(有答案)

“数据结构”期末考试试题一、单选题(每小题2分,共12分)1.在一个单链表HL中,若要向表头插入一个由指针p指向的结点,则执行( )。

A. HL=ps p一〉next=HLB. p一〉next=HL;HL=p3C. p一>next=Hl;p=HL;D. p一〉next=HL一〉next;HL一〉next=p;2.n个顶点的强连通图中至少含有( ).A。

n—l条有向边 B.n条有向边C。

n(n—1)/2条有向边 D。

n(n一1)条有向边3。

从一棵二叉搜索树中查找一个元素时,其时间复杂度大致为( )。

A.O(1) B。

O(n)C。

O(1Ogzn) D.O(n2)4.由权值分别为3,8,6,2,5的叶子结点生成一棵哈夫曼树,它的带权路径长度为()。

A.24 B.48C. 72 D. 535.当一个作为实际传递的对象占用的存储空间较大并可能需要修改时,应最好把它说明为( )参数,以节省参数值的传输时间和存储参数的空间。

A。

整形 B。

引用型C。

指针型 D。

常值引用型·6.向一个长度为n的顺序表中插人一个新元素的平均时间复杂度为( )。

A.O(n) B.O(1)C.O(n2) D.O(10g2n)二、填空题(每空1分,共28分)1.数据的存储结构被分为——、-—、-—和——四种。

2.在广义表的存储结构中,单元素结点与表元素结点有一个域对应不同,各自分别为-—域和——域。

3.——中缀表达式 3十x*(2。

4/5-6)所对应的后缀表达式为——-—。

4.在一棵高度为h的3叉树中,最多含有——结点。

5.假定一棵二叉树的结点数为18,则它的最小深度为—-,最大深度为——·6.在一棵二叉搜索树中,每个分支结点的左子树上所有结点的值一定--该结点的值,右子树上所有结点的值一定-—该结点的值.7.当向一个小根堆插入一个具有最小值的元素时,该元素需要逐层--调整,直到被调整到——位置为止.8.表示图的三种存储结构为——、—-和——-.9.对用邻接矩阵表示的具有n个顶点和e条边的图进行任一种遍历时,其时间复杂度为——,对用邻接表表示的图进行任一种遍历时,其时间复杂度为--。

《数据结构》习题及答案:第2章 线性表(第1次更新2012-3)

第2章线性表一、选择题1.表长为N 的顺序表,当在任何位置上插入或删除一个元素的概率相等时,插入一个元素所需移动元素的平均次数为(),删除一个元素需要移动的元素个数为()。

【**,★】A. (N-1)/2B. NC. N+1D. N-1E. N/2F. (N+1)/2G. (N-2)/22.线性表是具有N 个()的有限序列。

【*】A、表元素B、字符C、数据元素D、数据项E、信息3.“线性表的逻辑顺序和物理顺序总是一致的。

”这个结论是()。

【*】A、正确的B、错误的C、不一定,与具体结构有关。

4.线性表采用链式存储结构时,要求内存中可用存储单元的地址()。

【*,★】A、必须是连续的B、部分地址必须是连续的C、一定是不连续的D、连续或不连续都可以。

5.带头结点的单链表为空的判定条件是()。

【*】A、head==NULLB、head->next==NULLC、head->next==headD、head!=NULL6.不带头结点的单链表head 为空的判定条件是()。

【*】A、head==NULLB、head->next==NULLC、head->next==headD、head!=NULL7.非空的循环单链表head 的尾结点P 满足()。

(注:带头结点)【*】A、P->NEXT=NULLB、p=NULLC、p->next==headD、p==head8.在一个具有n 个结点的有序单链表中插入一个新结点并仍然有序的时间复杂度是()。

【*,★】A、O(1)B、O(n)C、O(n2)D、O(nlog2n)9.在一个单链表中,若删除P 所指结点的后继结点,则执行()。

【*,★】A、p->next=p->next->nextB、p=p->next;p->next=p->next->nextC、p->next=p->next;D、p=p->next->next;10.在一个单链表中,若在P所指结点之后插入S所指结点,则执行()。

2012年全国计算机等级C语言考试经典例题及题库

1、对象有如下一些基本特点,即标识惟一性、分类性、多态性、封装性和模块独立性。

2、SQL语句中凡创建都用CREA TE,删除都用DROP,改用ALTER,再跟类型和名字,附加子名。

3、关系模型允许定义3类数据约束,它们是实体完整性约束、参照完整性约束及用户自定义的完整性约束。

4、循环链表就是将链表的最后一个结点指向链表头结点(或第一个结点),即p->next=head。

5、程序设计应该简单易懂,语句构造应该简单直接,不应该为提高效率而把语句复杂化。

6、数据模型所描述的内容3有个部分,它们是数据结构、数据操作和数据约束。

7、C语言的转义字符见下表所示。

转义字符转义字符的意义\n 回车换行\t 横向跳到下一制表位置\v 竖向跳格\b 退格\r 回车\f 换页\\反斜线符“\”\’单引号符\a 鸣铃\ddd 1~3位八进制数所代表的字符\xhh 1~2位十六进制数所代表的字符8、分析:本题考查switch语句的掌握。

必须掌握以下内容:首先应该明白switch语句的语法格式:switch语句的语法格式为:switch(表达式){case常量表达式1:语句组1;case常量表达式2:语句组2;…case常量表达式n:语句组n;default:语句组n+1;}另外,注意以下几点关于switch语句的重点:①系统在执行时计算开关表达式的值;②根据所得的值在各个case标号表达式中寻找匹配,直到发现与表达式匹配的标号(本例中匹配的是case ′B′:);③找到匹配后执行后面相应的语句表,顺序往下执行;④如果无相匹配的标号,若存在default标号,则执行该语句标号后面的语句表n+1;当不存在default标号时,不执行switch中的任何一个语句表。

一般而言,在多分支结构中总会出现“意外”的情况,这时均可归入default:程序段,作统一的处理。

default标号是可选性的,不必每次都有,视需要而定。

switch语句中还可以包含switch语句,形成switch的嵌套9、在C语言中,逻辑运算符中一共有4个,它们分别是!(逻辑非)、||(逻辑或)、&&(逻辑与)、^(异或)。

2012年9月份全国计算机等级考试二级C语言_笔试+上机题库

2012年9月份全国计算机等级考试二级C语言笔试+上机题库(全)一、选择题在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为A)PAD图B)N-S图C)结构图D)数据流图(2)结构化程序设计主要强调的是A)程序的规模B)程序的效率C)程序设计语言的先进性D)程序易读性(3)为了使模块尽可能独立,要求A)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强B)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱C)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱D)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强(4)需求分析阶段的任务是确定A)软件开发方法B)软件开发工具C)软件开发费用D)软件系统功能(5)算法的有穷性是指A)算法程序的运行时间是有限的B)算法程序所处理的数据量是有限的C)算法程序的长度是有限的D)算法只能被有限的用户使用(6)对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是A)快速排序B)冒泡排序C)直接插入排序D)堆排序(7)如果进栈序列为e1,e2,e3,e4,则可能的出栈序列是A)e3,e1,e4,e2 B)e2,e4,e3,e1 C)e3,e4,e1,e2 D) 任意顺序(8)将E-R图转换到关系模式时,实体与联系都可以表示成A)属性B)关系C)键D)域(9)有三个关系R、S和T如下:RB C Da 0 k1b 1 n1SB C Df 3 h2a 0 k1n 2 x1TB C Da 0 k1由关系R和S通过运算得到关系T,则所使用的运算为A)并B)自然连接C)笛卡尔积D)交(10)下列有关数据库的描述,正确的是A)数据处理是将信息转化为数据的过程B)数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变C)关系中的每一列称为元组,一个元组就是一个字段D)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字(11)以下叙述中正确的是A)用C程序实现的算法必须要有输入和输出操作B)用C程序实现的算法可以没有输出但必须要有输入C)用C程序实现的算法可以没有输入但必须要有输出D)用C程序实现的算法可以既没有输入也没有输出(12)下列可用于C语言用户标识符的一组是A)void, define, WORD B)a3_3,_123,Car C)For, -abc, IF Case D)2a, DO, sizeof(13)以下选项中可作为C语言合法常量的是A)-80 B)-080 C)-8e1.0 D)-80.0e(14)若有语句:char *line[5];,以下叙述中正确的是A) 定义line是一个数组,每个数组元素是一个基类型为char为指针变量B) 定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组C) 定义line是一个指针数组,语句中的*号称为间址运算符D) 定义line是一个指向字符型函数的指针(15)以下定义语句中正确的是A)int a=b=0; B)char A=65+1,b=′b′; C)float a=1,*b=&a,*c=&b;D)double(16)有以下程序段char ch; int k;ch=′a′;k=12;printf("%c,%d,",ch,ch,k); printf("k=%d \n",k);已知字符a的ASCII码值为97,则执行上述程序段后输出结果是A)因变量类型与格式描述符的类型不匹配输出无定值B)输出项与格式描述符个数不符,输出为零值或不定值C)a,97,12k=12D)a,97,k=12(17)有以下程序main(){ int i,s=1;for (i=1;i<50;i++)if(!(i%5)&&!(i%3)) s+=i;printf("%d\n",s);}程序的输出结果是A)409 B)277 C)1 D)91(18)当变量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)(19)若变量已正确定义,有以下程序段int a=3,b=5,c=7;if(a>b) a=b; c=a;if(c!=a) c=b;printf("%d,%d,%d\n",a,b,c);其输出结果是A)程序段有语法错B)3,5,3 C)3,5,5 D)3,5,7(20)有以下程序#include <stdio.h>main(){ int x=1,y=0,a=0,b=0;switch(x){ case 1:switch(y){ case 0:a++; break;case 1:b++; break;}case 2:a++; b++; break;case 3:a++; b++;}printf("a=%d,b=%d\n",a,b);}程序的运行结果是A)a=1,b=0 B)a=2,b=2 C)a=1,b=1 D)a=2,b=1 (21)下列程序的输出结果是#include "stdio.h"main(){ int i,a=0,b=0;for(i=1;i<10;i++){ if(i%2==0){a++;continue;}b++;}printf("a=%d,b=%d",a,b); }A)a=4,b=4 B)a=4,b=5 C)a=5,b=4 D)a=5,b=5(22)已知#int t=0;while (t=1){...}则以下叙述正确的是A)循环控制表达式的值为0B)循环控制表达式的值为1C)循环控制表达式不合法D)以上说法都不对(23)下面程序的输出结果是main(){ int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;printf("%d\n",*(p+2));}A)3 B)4 C)1 D)2(24)以下错误的定义语句是A)int x[][3]={{0},{1},{1,2,3}}; B)int x[4][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};C)int x[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}}; D)int x[][3]={1,2,3,4};(25)有以下程序void ss(char *s,char t){ while(*s){ if(*s==t)*s=t-′a′+′A′;s++; } }main(){ char str1[100]="abcddfefdbd",c=′d′;ss(str1,c); printf("%s\n",str1);}程序运行后的输出结果是A)ABCDDEFEDBD B)abcDDfefDbD C)abcAAfefAbA D)Abcddfefdbd (26)有如下程序main(){ char ch[2][5]={"6937","8254"},*p[2];int i,j,s=0;for(i=0;i<2;i++)p[i]=ch[i];for(i=0;i<2;i++)for(j=0;p[i][j]>′\0′;j+=2)s=10*s+p[i][j]-′0′;printf("%d\n",s);}该程序的输出结果是A)69825 B)63825 C)6385 D)(27)有定义语句:char s[10];,若要从终端给s输入5个字符,错误的输入语句是A)gets(&s[0]); B)scanf("%s",s+1); C)gets(s); D)scanf("%s",s[1]);(28)以下叙述中错误的是A)在程序中凡是以"#"开始的语句行都是预处理命令行B)预处理命令行的最后不能以分号表示结束C)#define MAX 是合法的宏定义命令行D)C程序对预处理命令行的处理是在程序执行的过程中进行的(29)设有以下说明语句typedef struct{ int n;char ch[8];} PER;则下面叙述中正确的是A)PER 是结构体变量名B)PER是结构体类型名C)typedef struct 是结构体类型D)struct 是结构体类型名(30)以下叙述中错误的是A)gets函数用于从终端读入字符串B)getchar函数用于从磁盘文件读入字符C)fputs函数用于把字符串输出到文件D)fwrite函数用于以二进制形式输出数据到文件(31)以下能正确定义一维数组的选项是A)int a[5]={0,1,2,3,4,5}; B)char a[]={′0′,′1′,′2′,′3′,′4′,′5′,′\0′}; C)char a={′A′,′B′,′C′};D)int a[5]="0123";(32)有以下程序#include<string.h>main(){ char p[]={′a′, ′b′, ′c′},q[10]={ ′a′, ′b′, ′c′};printf("%d%d\n",strlen(p),strlen(q));}以下叙述中正确的是A) 在给p和q数组置初值时,系统会自动添加字符串结束符,故输出的长度都为3B) 由于p数组中没有字符串结束符,长度不能确定,但q数组中字符串长度为3C) 由于q数组中没有字符串结束符,长度不能确定,但p数组中字符串长度为3D) 由于p和q数组中都没有字符串结束符,故长度都不能确定(33)有以下程序#include <stdio.h>#include <string.h>for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(strlen(s[i])>strlen(s[j])) {t=s[i];s[i]:s[j];s[j]=t;}}main()fun(ss,5); printf("%s,%s\n",ss[0],ss[4]);}程序的运行结果是A)xy,aaaacc B)aaaacc,xy C)bcc,aabcc D)aabcc,bcc(34)有以下程序#include <stdio.h>{ int y;if(x==0||x==1) return(3);-f(x-2);return y;}main(){ int z;z=f(3); printf("%d\n",z);}程序的运行结果是A)0 B)9 C)6 D)8(35)下面程序段的运行结果是char str[]="ABC",*p=str;printf("%d\n",*(p+3));A)67 B)0 C)字符′C′的地址D)字符′C′(36)若有以下定义:struct link{ int data;struct link *next;} a,b,c,*p,*q;且变量a和b之间已有如下图所示的链表结构:指针p指向变量a,q指向变量c。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、采用链结构存储线性表时,其地址( B )。
A)必须是连续的 B)连续不连续都可以
C)部分地址必须是连续 D)必须是不连续的

2、设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a??11为第一个元素,
其存储地址为1,每元素占1个地址空间,则a85的地址为( B )。
A)13 B)33 C)18 D)40

3、线索二叉树中某结点D,没有左孩子的条件是( B )。
A)D->Lchild=Null B) D->ltag=1
C) D->Rchild=Null D) D->ltag=0

4、下列各种数据结构中属于线性结构的有( A )。
A)栈 B) 二叉树
C) 广义表 D) 图

5、下列各种数据结构中属于线性结构的有( A )。
A)栈 B) 二叉树
C) 广义表 D) 图

6、串的逻辑结构与( D )的逻辑结构不相同。
A)线性表 B)栈
C)队列 D)集合

7、如果结点A有3个兄弟,而且B为A的双亲,则B的度为( B )。
A)3 B)4 C)5 D)1

8、在一个链队列中,假定front和rear分别为队首和队尾指针,则插入一个结点的操作为
( B )。
A)front=front->next; B) rear=rear->next;
C) rear=front->next; D) front=rear->next ;

9、线索二叉树中某结点D,没有左孩子的条件是( B )。
A)D->Lchild=Null B) D->ltag=1
C) D->Rchild=Null D) D->ltag=0

10、倘若在对串的插入、删除运算中,期望运算速度最快,则应采用( C )。
A)顺序表示法 B)单字符为结点的单链表表示法
C)等量分块表示法 D)不等量分块表示法

11、采用链结构存储线性表时,其地址( B )。
A)必须是连续的 B)连续不连续都可以
C)部分地址必须是连续 D)必须是不连续的
12、倘若在对串的插入、删除运算中,期望运算速度最快,则应采用( C )。
A)顺序表示法 B)单字符为结点的单链表表示法
C)等量分块表示法 D)不等量分块表示法

13、下面关于线性表的叙述中,错误的是哪一个?( D )
A)线性表采用顺序存储,必须占用一片连续的存储单元。
B)线性表采用链接存储,便于插入和删除操作。
C)线性表采用链接存储,不必占用一片连续的存储单元。
D)线性表采用顺序存储,便于进行插入和删除操作。

14、( C )在进行插入操作时,常产生假溢出现象。
A)顺序栈 B)循环队列
C)顺序队列 D)链队列

相关文档
最新文档