- 相关推荐
备考计算机二级C语言真题试卷
在学习、工作中,我们都要用到试卷,做试卷的意义在于,可以检验学习效果,找出自己的差距,提高增强自信心。大家知道什么样的试卷才是好试卷吗?下面是小编为大家收集的备考计算机二级C语言真题试卷,欢迎阅读与收藏。

备考计算机二级C语言真题试卷 1
一、选择题(每小题1分,共40分)
1、有以下程序:
程序运行后的输出结果是( )。
A.1,2,6,24,120,
B.1,2,3,4,5,
C.1,1,1,1,1,
D.1,2,4,6,8,
2、下列叙述中正确的是( )。
A.软件是程序、数据和文档
B.软件是程序和数据
C.软件是算法和数据结构
D.软件是算法和程序
3、语句prinff(”%d\n”,strlen(”\t\”\、、n\"\065\08AB”));的输出结果是( )。
A.6
B.7
C.8
D.9
4、函数fun的功能是在a所指的具有n个元素的数组中查找最大值并返回给调用函数,函数不完整。
在if语句下划线处应填人的选项是( )。
A.O>s
B.* P>*s
C.a[p]>a[s]
D.p—a>P—s
5、若有语句:int a[3][4],(。P)[4];P=a;,则以下选项中叙述错误的是( )。
A.系统将开辟一个名为P的二维数组,“o][o]中的值即为a[o][o]中的值
B.P+1代表a[1][0]的地址
C.P中将存放a数组的首地址
D.P+2代表a数组最后一行的首地址
6、有以下程序:
程序运行后的输出结果是( )。
A.4,5,2,4,1,3,
B.4,4,2,2,1,1,
C.5,5,3,3,2,2,
D.4,4,2,2,1,3
7、若有定义:int a,b,C;以下程序段的输出结果是( )。
a=11;b=3;C=0;
pfinff(”%d\n”,c=(a/b,a%B.);
A.2
B.0
C.3
D.1
8、若有定义:doublea,b,c;能正确给a,b,c输入数据的语句是( )。
A.seanf(”%lf%1f%1P‘&a,&b,&C.;
B.scanf(-t%f%f%f¨,&a,&b。&C.:
C.scanf(”%If%lf%lf’,a,b,C.;
D.scanf(”%lf%lf%lf’,&a,&b,&C.;
9、有以下程序段:
以下选项中不能正确引用字符串的是( )。
A.3
B.p[3]
C.str[2]
D.*P
10、在最坏情况下,二分查找法的时间复杂度为( )。
11、 有以下程序:
程序运行后的输出结果是( )。
A.2
B.0
C.1
D.3
12、 若有定义:
typedefint*T[10];T a;
则以下选项与上述定义中a的类型完全相同的是( )。
A.int*a[10];
B.int(*A.[10];
C.int a[10];
D.int(*a[10]);
13、 医生可以为病人开不同的药,而同一种药也可由不同医生开给病人,则实体医生和实体药之间的联系是( )。
A.多对多
B.一对一
C.多对一
D.一对多
14、 为了建立如图所示的存储结构(即每个结点含两个域,data是数据域,next是指向结点的指针域)则在
( )处填入的选项是( )。*struetlink{ehardata;( )node;
A.struetlink*next;
B.linknext;
C.link$next;
D.struetlinknext;
15、 有以下程序:
当执行程序时,按下列方式输入数据(从第l列开始,代表回车,注意:回车也是一个字符]1234则输出结果是( )。
A.123
B.12
C.1234
D.12
34
16、 有以下程序:
程序运行后的输出结果是( )。
A.CB
B.BCA
C.CCBB
D.CDBCA
17、 有以下程序:
程序运行后的输出结果是( )。
A.0,1
B.0,0
C.1,一1
D.0,2
18、 有以下程序:
A.9
B.-1
C.10
D.0
19、下列叙述中错误的是( )。
A.数据结构中的数据元素不能是另一数据结构
B.数据结构中的数据元素可以是另一数据结构
C.空数据结构可以是线性结构也可以是非线性结构
D.非空数据结构可以没有根结点
20、 以下选项中合法的c语言常量是( )。
A.,C—STR’
B.2014.1
C.”\l.0
D.2EK
21、 有以下程序:
程序输出( )。
A.编译有错
B.0,0,0,3
C.1,1,2,0
D.0,1,2,0
22、 有以下程序-
程序运行后的输出结果是( )。
A.4
B.2
C.8
D.1
23、 软件生命周期是指( )。
A.软件的定义和开发阶段
B.软件的需求分析、设计与实现阶段
C.软件的开发阶段
D.软件产品从提出、实现、使用维护到停止使用退役的过程
24、 有以下程序:
执行时输入:3.6 2.4<回车>,则输出结果是( )。
A.2.400000
B.1.500000
C.1.600000
D.2.000000
25、 有以下程序:
程序运行后的输出结果是( )。
A.?
B.3.2G
C.????
D.7.2G
26、 有以下程序:
执行时输入:6<回车>,则输出结果是( )。
A.6
B.8
C.7
D.5
27、 能从任意一个结点开始没有重复地扫描到所有结点的数据结构是( )。
A.循环链表
B.双向链表
C.二叉链表
D.有序链表
28、 以下是正确c语言标识符的是( )。
A.&3
B.#3
C.j
D.一3
29、 关于地址和指针,以下叙述正确的`是( )。
A.可以通过强制类型转换让char型指针指向double型变量
B.函数指针P指向一个同类型的函数f时,必须写成:p=&f;
C.指针P指向一个数组f时,必须写成:p=ecf;
D.一个指针变量P可以指向自身
30、 有以下程序:
J
程序运行后的输出结果是( )。
A.1,5
B.2,4
C.2,6
D.2,5
31、 有以下程序:。
程序运行后的输出结果是( )。
A.8
B.6
C.7
D.9
32、 有以下程序:
程序运行后的输出结果是( )。
A.1
B.2
C.3
D.0
33、 设Z.X树中共有31个结点,其中的结点值互不相同。如果该二叉树的后序序列与中序序列相同,该二叉树的深度为( )。
A.31
B.16
C.17
D.5
34、 有以下程序:
执行时输入:l 2 3<回车>,则输出结果是( )。
A.2,2,4,4,
B.2,3,4,
C.2,2,3,4,
D.2,3,3,4,5,6,
35、 以下叙述错误的是( )。
A.一个算法所包含的操作步骤应该是有限的
B.任何能通过编译和运行的算法都一定能得到所期望的结果
C.算法中每一条指令必须有确切的含义
D.算法可以用各种描述方法来进行描述
36、 设栈的存储空间为S(1:m),初始状态为top=m+1。经过一系列入栈与退栈操作后,top=1。现又要将一个元素进栈,栈顶指针t叩值变为( )。
A.发生栈满的错误
B.2
C.m
D.0
37、 有以下程序:
程序运行后的输出结果是( )。
A.I
B.J
C.K
D.H
38、 有以下程序:
39、 有以下程序:
执行时输入:2<回车>,则输出结果是( )。
A.1 23 4
B.5 431
C.1235
D.32 1 4
40、 若要建立下图所示的存储结构,以下正确的程序段是( )。
二、程序填空题(共18分)
41、给定程序中,函数fun的作用是:不断从终端读入整数,由变量a统计大于0的个数,用变量c来统计小于0的个数,当输入0时结束输入,并通过形参pa和pb把统计的数据传回主函数进行输出。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在BLANKl.C中。
不得增行或删行,也不得更改程序的结构!试颖程序.
三、程序改错题(共24分)
42、给定程序MODII.C中,函数fun的功能是判断整数n是否是”完数”。当一个数的因子之和恰好等于这个数本身时,就称这个数为”完数”。例如:6的因子包括1、2、3,而6=1+2+3,所以6是完数。如果是完数,函数返回值为1,否则函数返回值为0。数组a中存放的是找到的因子,变量k中存放的是因子的个数。请改正函数fun中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
备考计算机二级C语言真题试卷 2
1). 关于C语言的变量,以下叙述中错误的是( )
A.所谓变量是指在程序运行过程中其值可以被改变的量
B.变量所占的存储单元地址可以随时改变
C.程序中用到的所有变量都必须先定义后才能使用
D.由三条下划线构成的符号名是合法的变量名
正确答案:B
答案解析:变量是指在程序运行过程中其值可以改变的值,一个变量实质上是代表了内存中的某个存储单元。在程序中对某个变量的操作实际上就是对这个存储单元的操作,程序运行期间,这个分配的存储单元不会改变,但是其值可以变化。变量命名要符合标识符的规定,其中下划线是标识符的组成字符。程序中所有变量都必须先定义后使用。
2). 当变量c的值不为2、4、6时,值也为″真″的表达式是( )
A.(c==2)||(c==4)||(c==6)
B.(c>=2 && c<=6)&&!(c%2)
C.(c>=2 &&c<=6)&&(c%2!=1)
D.(c>=2 && c<=6) || (c!=3)|| (c!=5)
正确答案:D
答案解析:逻辑或运算中,只要有一项为真,表达式的值就为真,故选项D中c的值不为2、4、6时,那么表达式(c>=2&& c<=6)以及(c!=3)、(c!=5)必有一个成立,表达式的值也为真。
3). 在C语言中,函数返回值的类型最终取决于
A.函数定义时在函数首部所说明的函数类型
B.return语句中表达式值的类型
C.调用函数时主调函数所传递的实参类型
D.函数定义时形参的类型
正确答案:A
答案解析:在C语言中,应当在定义函数时指定函数值的类型,凡不加类型说明的函数,一律按整型处理。在定义函数时,对函数值说明的类型一般应该和return语句中的表达式类型一致。如果函数值的类型和return语句中的表达式类型不一致,则以函数类型为主,即函数类型决定返回值的类型。
4). 以下叙述中正确的是( )
A.在C语言中,预处理命令行都以″#″开头
B.预处理命令行必须位于C源程序的起始位置
C.#include 必须放在C程序的开头
D.C语言的预处理不能实现宏定义和条件编译的功能
正确答案:A
答案解析:在C语言中,凡是以″#″号开头的行,都称为″编译预处理″命令行。预处理命令可以放在程序中的任何位置,其有效范围是从定义开始到文件结束。预处理命令有宏定义、文件包含和条件编译三类。#include 命令行表示程序中要引用C标准函数库中的标准输入输出函数。
5). 下列叙述中,不属于测试的特征的是
A.测试的挑剔性
B.完全测试的不可能性
C.测试的可靠性
D.测试的经济性
正确答案:C
答案解析:软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给出程序可靠性的鉴定。它有3个方面的重要特征,即测试的挑剔性、完全测试的不可能性及测试的经济性。其中,没有测试的可靠性这一说法。
6). 以下选项中不属于C语言标识符的是( )
A.用户标识符
B.关键字
C.常量
D.预定义标识符
正确答案:C
答案解析:C语言的标识符可分为以下3类:①关键字。C语言预先规定了一批标识符,它们在程序中都代表着固定的含义,不能另作他用。这些字符称为关键字。例如,int、double、if、else、while、for等。②预定义标识符。即预先定义并具有特定含义的标识符。③用户标识符。由用户根据需要定义的'标识符称为用户标识符,又称自定义标识符,一般用来给变量、函数、数组等命名。
7). 以下关于字符串的叙述中正确的是( )
A.两个字符串中的字符个数相同时才能进行字符串大小的比较
B.可以用关系运算符对字符串的大小进行比较
C.空串比空格打头的字符串小
D.C语言中有字符串类型的常量和变量
正确答案:C
答案解析:C语言本身并没有设置一种类型来定义字符串变量,却允许使用″字符串常量″。字符串常量是由双引号括起来的一串字符。任意两个字符串的大小比较要调用字符串比较函数strcmp(s1,s2 )来进行,其比较的方法是依次对s1和s2中对应位置上的字符两两进行比较,当出现第一对不相同的字符时,即由这两个字符决定所在串的大小(比较字符大小的依据是其ASCⅡ码值)。
8). 下列叙述中正确的是( )。
A.调用printf( )函数时,必须要有输出项
B.使用put )函数时,必须在之前包含头文件stdio.h
C.在C语言中,整数可以以二进制、八进制或十六进制的形式输出
D.调节get )函数读入字符时,可以从键盘上输入字符所对应的ASCII码
正确答案:B
答案解析:选项A,若printf函数没有输出项,且格式字符串中不含格式信息,则输出的是格式字符串本身,若格式字符串含有格式信息,运行时则出现错误提示;选项C,在C语言中,整数可以十进制、八进制或十六进制的形式输出;选项D,getchar函数是从标准输入设备读取一个字符。
9). 以下结构体类型说明和变量定义中正确的是( )
A.typedefstruct { int n; char c; } REC; REC t1,t2;
B.structREC ; { int n; char c; }; REC t1,t2;
C.typedefstruct 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为用户自定义类型,其为正确的定义形式。
10). 若实体A和B是一对多的联系,实体B和C是一对一的联系,则实体A和C的联系是( )
A.一对一
B.一对多
C.多对一
D.多对多
正确答案:B
答案解析:由于B和C有一一对应的联系,而A和B只间有一对多的联系,则通过关系之间的传递,则A和C之间也是一对多的联系。
11). 待排序的关键码序列为(15,20,9,30,67.65,45,90),要按关键码值递增的顺序排序,采取简单选择排序法,第一趟排序后关键码15被放到第( )个位置。
A.2
B.3
C.4
D.5
正确答案:B
答案解析:选择排序的基本思想是扫描整个线性表,从中选出最小的元素,将它交换到表的最前面,然后对剩下的子表采用同样的方法,直到子表为空。所以第一趟排序后,将选出最小的元素9放在第一个位置,元素15则被交换放在第三个位置。
备考计算机二级C语言真题试卷 3
1. 下列叙述中正确的是( )。
A. 循环队列是队列的一种链式存储结构
B. 循环队列是一种逻辑结构
C. 循环队列是队列的一种顺序存储结构
D. 循环队列是非线性结构
【答案】C
【解析】线性表常用存储结构为:①顺序存储结构,物理上连续存储,空间位置隐含逻辑位置,②链式存储结构,存储上不连续,通过指针相连。循环队列是指用一段地址连续的存储单元存储数据元素,定义两个游标:指向队头的游标(front)、指向队尾的游标(rear)。
2. 下列叙述中正确的是( )。
A. 栈是一种先进先出的线性表
B. 队列是一种后进先出的线性表
C. 栈与队列都是非线性结构
D. 以上三种说法都不对
【答案】D
【解析】栈和队列都是操作受限的线性表:栈只能在栈顶插入和删除元素,按照先进后出的原则组织数据;队列只能在队头删除元素,在队尾插入元素,按照先进先出的原则组织数据。对于每一个节点都有一个前件和一个后件,属于线性结构。
3. 一棵二叉树共有25个结点,其中5个是叶子结点,则度为1的结点数为( )。
A. 16
B. 10
C. 6
D. 4
【答案】A
【解析】二叉树中,度为0的结点(即叶子结点)比度为二的结点多1个,而度为0、1、2的结点相加等于总结点数25,所以度为1的结点数为25-5-(5-1)=16。
4. 在下列模式中,能够给出数据库物理存储结构与物理存取方法的是( )。
A. 外模式
B. 内模式
C. 概念模式
D. 逻辑模式
【答案】B
【解析】数据库管理系统的三级模式包括:①外模式,也称子模式、用户模式,是指数据库用户所看到的数据结构,是用户看到的数据视图;②模式,也称逻辑模式,是数据库中对全体数据的逻辑结构和特性的描述,是所有用户所见到的数据视图的`总和;③内模式,也称存储模式、物理模式,是指数据在数据库系统内的存储介质上的表示,是对数据的物理结构和存取方式的描述。答案选择B选项。
5. 在满足实体完整性约束的条件下( )。
A. 一个关系中应该有一个或多个候选关键字
B. 一个关系中只能有一个候选关键字
C. 一个关系中必须有多个候选关键字
D. 一个关系中可以没有候选关键字
【答案】A
【解析】在关系R中如记录完全函数依赖于属性(组)X,则称X为关系R中的一个候选关键字。候选关键字的性质有①在一个关系中,候选关键字可以有多个,②任何两条记录候选关键字值都是不相同的;③关键字由一个属性构成,也可能由多个属性构成;④在任何关系中至少有一个关键字。所以,在满足实体完整性约束的条件下,一个关系中应该有一个或多个候选关键字。答案选择A选项。
6. 一个栈的初始状态为空。现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是( )。
A. 123456ABCDE
B. EDCBA54321
C. ABCDE12345
D. 54321EDCBA
【答案】B
【解析】栈是按照“先进后出”的原则组织数据的,入栈的顺序为12345ABCDE,则依次出栈的顺序应为其逆序,即EDCBA54321。答案选择B选项。
7. 下列叙述中正确的是( )。
A. 循环队列有队头和队尾两个指针,因此,循环队列是非线性结构
B. 在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况
C. 在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况
D. 循环队列中元素的个数是由队头指针和队尾指针共同决定
【答案】D
【解析】D项正确,从队头指针front指向的后一个位置直到队尾指针rear指向的位置之间所有的元素均为队列中的元素。A项错误,循环队列是将队列存储空间的最后一个位置绕到第一个位置,形成逻辑上的环形空间,其存储结构依然是顺序的BC两项错误,在循环队列中,每进行一次入队运算,队尾指针就进一,每进行一次出队运算,队头指针就进一,可见由队头指针和队尾指针一起反映队列中元素的动态变化情况。
8. 在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是( )。
A. 0(n)
B. O(n2)
C. O (log2n)
D. O(nlog2n)
【答案】C
【解析】二分查找的最坏情况是不断的二分直至无法再分时,仍然没有查找成功。对于有序的线性表,二分查找法只需比较log2n次。答案选择C选项。
9. 下列叙述中正确的是( )。
A. 顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的
B. 顺序存储结构只针对线性结构,链式存储结构只针对非线性结构
C. 顺序存储结构能存储有序表,链式存储结构不能存储有序表
D. 链式存储结构比顺序存储结构节省存储空间
【答案】A
【解析】A项正确,在顺序存储结构中所有元素所占的存储空间是连续的,而在链式存储结构中,存储数据结构的存储空间可以不连续。
10. 数据流图中带有箭头的线段表示的是( )。
A. 控制流
B. 事件驱动
C. 模块调用
D. 数据流
【答案】D
【解析】数据流图基本符号的含义:①矩形表示数据的外部实体,②圆角的矩形表示变换数据的处理逻辑;③缺少右半边的矩形表示数据的存储;④箭头表示数据流。答案选择D选项。
【备考计算机二级C语言真题试卷】相关文章:
计算机二级C语言真题09-30
计算机二级C语言笔试真题10-12
计算机二级《C语言》真题练习11-28
计算机二级C语言真题选择题07-20
计算机二级C语言真题填空题05-08
2017计算机二级C语言备考训练题08-25
计算机二级C语言历年真题及答案11-02
计算机二级考试C语言无纸化真题10-06
计算机等级考试二级C语言真题09-26