【计算机类职业资格】二级C语言笔试-67及答案解析.doc
《【计算机类职业资格】二级C语言笔试-67及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-67及答案解析.doc(25页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试-67 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:70.00)1.已知函数的调用形式为 fread(buf,size,count,fp),参数 buf的含义是(分数:2.00)A.一个整型变量,代表要读入的数据项总数B.一个文件指针,指向要读的文件C.一个指针;指向要读入数据的存放地址D.一个存储区,存放要读的数据项2.有以下程序#includestring.hmain()char p=a,b,c,q10=a,b,c;printf(“%d%d/n“,strlen(p),strlen(q);以下叙述中正确的是(分数:2.00)A.在给
2、p和 q数组置初值时,系统会自动添加字符串结束符,故输出的长度都为 3B.由于 p数组中没有字符串结束符,长度不能确定,但 q数组中字符串长度为 3C.由于 q数组中没有字符串结束符,长度不能确定,但 p数组中字符串长度为 3D.由于 p和 q数组中都没有字符串结束符,故长度都不能确定3.已知#int t=0;while(t=1)则以下叙述正确的是(分数:2.00)A.循环控制表达式的值为 0B.循环控制表达式的值为 1C.循环控制表达式不合法D.以上说法都不对4.当变量 c的值不为 2、4、6 时,值也为“真”的表达式是(分数:2.00)A.(c=2)|(c=4)|(c=6)B.(c=2 j
3、+=2)s=10*s+pij-0;printf(“%d/n“,s);该程序的输出结果是(分数:1.00)A.69825B.63825C.6385D.69382513.若有条件表达式(exp)?a+:b-,则以下表达式中能完全等价于表达式(exp)的是(分数:1.00)A.(exp=0)B.(exp!=0)C.(exp=1)D.(exp!=1)14.对长度为 n的线性表排序,在最坏情况下,比较次数不是 n(n-1)/2的排序方法是(分数:1.00)A.快速排序B.冒泡排序C.直接插入排序D.堆排序15.若变量均已正确定义并赋值,以下合法的 C语言赋值语句是(分数:1.00)A.x=y=5;B.x
4、=n%2.5;C.x+n=i;D.x=5=4+1;16.下面程序段的运行结果是char*s=“abcde“;s+=2;printf(“%d“,s);(分数:1.00)A.cdeB.字符cC.字符c的地址D.无确定的输出结果17.需求分析阶段的任务是确定(分数:1.00)A.软件开发方法B.软件开发工具C.软件开发费用D.软件系统功能18.栈底至栈顶依次存放元素 A、B、C、D,在第五个元素 E入栈前,栈中元素可以出栈,则出栈序列可能是(分数:1.00)A.ABCEDB.DCBEAC.DBCEAD.CDABE19.关系表中的每一横行称为一个(分数:1.00)A.元组B.字段C.属性D.码20.程
5、序流程图中带有箭头的线段表示的是(分数:1.00)A.图元关系B.数据流C.控制流D.调用关系21.若有以下定义:struct linkint data;strnct link *next;a,b,c,*p,*q;且变量 a和 b之间已有如下图所示的链表结构:(分数:2.00)A.B.C.D.22.下列有关数据库的描述,正确的是(分数:2.00)A.数据处理是将信息转化为数据的过程B.数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变C.关系中的每一列称为元组,一个元组就是一个字段D.如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字
6、23.以下叙述中错误的是(分数:2.00)A.在程序中凡是以“#”开始的语句行都是预处理命令行B.预处理命令行的最后不能以分号表示结束C.#define MAX是合法的宏定义命令行D.C程序对预处理命令行的处理是在程序执行的过程中进行的24.将 E-R图转换到关系模式时,实体与联系都可以表示成(分数:2.00)A.属性B.关系C.键D.域25.以下叙述中错误的是(分数:2.00)A.gets函数用于从终端读入字符串B.getchar函数用于从磁盘文件读入字符C.fputs函数用于把字符串输出到文件D.fwrite函数用于以二进制形式输出数据到文件26.以下选项中,不能作为合法常量的是(分数:2
7、.00)A.1.234e04B.1.234e0.4C.1.234e+4D.1.234e027.变量 a中的数据用二进制表示的形式是 01011101,变量 b中的数据用二进制表示的形式是 11110000。若要求将 a的高位取反,低 4位不变,所要执行的运算是(分数:2.00)A.abB.a|bC.ap=printf(“%d/n“,a12);(分数:2.00)A.3B.6C.9D.随机数32.有以下程序段char ch; int k;ch=a; k=12;printf(“%c,%d,“,ch,ch,k); printf(“k=%d/n“,k);已知字符 a的 ASCII码值为 97,则执行上述
8、程序段后输出结果是(分数:2.00)A.因变量类型与格式描述符的类型不匹配输出无定值B.输出项与格式描述符个数不符,输出为零值或不定值C.a,97,12k=12D.a,97,k=1233.下面程序段中,输出*的个数是char *s=“/ta/018bc“;for(;*s!=/0;s+)printf(“*“);(分数:2.00)A.9B.5C.6D.734.若有语句:char*line5;,以下叙述中正确的是(分数:2.00)A.定义 line是一个数组,每个数组元素是一个基类型为 char的指针变量B.定义 line是一个指针变量,该变量可以指向一个长度为 5的字符型数组C.定义 line是一
9、个指针数组,语句中的。号称为间址运算符D.定义 line是一个指向字符型函数的指针35.以下不正确的叙述是(分数:2.00)A.在 C程序中,逗号运算符的优先级最低B.在 C程序中,APH 和 aph是两个不同的变量C.若 a和 b类型相同,在计算了赋值表达式 a=b后,b 中的值将放入 a中,而 b中的值不变D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值36.下面判断正确的是(分数:2.00)A.char*a=“china“;等价于 char*a;*a=“china“;B.char str5=“china“;等价于 char str=“china“;C.c
10、har *s=“china“;等价于 char *s;s=“china“;D.char c4=“abc“,d4=“abc“;等价于 char c4=d4=“abc“;37.算法的时间复杂度是指(分数:2.00)A.执行算法程序所需要的时间B.算法程序的长度C.算法执行过程中所需要的基本运算次数D.算法程序中的指令条数38.有定义语句:char s10;,若要从终端给 s输入 5个字符,错误的输入语句是(分数:2.00)A.gets( j+=2)s=10*s+pij-0;printf(“%d/n“,s);该程序的输出结果是(分数:1.00)A.69825B.63825C.6385 D.69382
11、5解析:解析 该题稍微难一点。主要要搞清楚以下几点:定义了一个指针数组 char *p2后,程序中第一个循环 for(i=0;i2;i+)pichi;的作用,是使指针数组的 p0元素(它本身是一个指针)指向了二维数组 ch的第一行字符串,并使指针数组的 p1元素指向二维数组 ch的第二行字符串。这样,就使指针数组 p和二维数组 ch建立起了一种对应关系,以后对二维数组 ch的某个元素的引用就有两种等价的形式:chij或 pij。对二维数组 ch的初始化,使其第一行 ch0中存入了字符串“6937”,第二行 ch1中的内容为字符串“8254”。程序中第二个循环中的循环体 ss*10+pi j-0
12、;的功能是这样的,每执行一次,将 s中的值乘以 10(也即将 s中的数值整体向左移动一位,并在空出来的个位上添一个 0),再将当前 pii中的字符量转换为相应的数字,然后把这个数字加到 s的个位上。注意到内启循环的循环条件 pij/0是指 pij中的字符只要不是字符串结束标志/0就继续循环。语句 j+2;是使下标 j每次增加 2,也即一个隔一个地从 pi所指向的字符串中取出字符。经过上述解析后,不难看出,该程序首先从 p0所指向的字符串“6937”中一个隔一个地取出字符,分别是“6”和“3”,然后从 p1)所指向的字符串“8254”中一个隔一个地取出字符,分别是“8”和“5”,同时经过转换和相
13、加运算后,结果 s中的值应该是 6385。13.若有条件表达式(exp)?a+:b-,则以下表达式中能完全等价于表达式(exp)的是(分数:1.00)A.(exp=0)B.(exp!=0) C.(exp=1)D.(exp!=1)解析:解析 条件运算符要求有 3个操作对象,称三日(元)运算符,它是 C语言中唯一的一个三目运算符。条件表达式的一般形式为:表达式 17表达式 2:表达式 3。其求解顺序是:先求解表达式 1,若为非 0(真)则求解表达式 2,此时表达式 2的值就作为整个条件表达式的值。若表达式 1的值为 0(假),则求解表达式 3,表达式 3的值就是整个条件表达式的值,注意+、-的用法
14、。14.对长度为 n的线性表排序,在最坏情况下,比较次数不是 n(n-1)/2的排序方法是(分数:1.00)A.快速排序B.冒泡排序C.直接插入排序D.堆排序 解析:解析 在最坏情况下,快速排序、冒泡排序和直接插入排序需要的比较次数都为 n(n-1)/2,堆排序需要的比较次数为 nlog2n。15.若变量均已正确定义并赋值,以下合法的 C语言赋值语句是(分数:1.00)A.x=y=5; B.x=n%2.5;C.x+n=i;D.x=5=4+1;解析:解析 赋值运算符左侧的操作数必须是一个变量,而不能是表达式或者常量,选项 C) 和 D) 错误。“%”运算符两侧都应当是整型数据,选项 B) 错误。
15、16.下面程序段的运行结果是char*s=“abcde“;s+=2;printf(“%d“,s);(分数:1.00)A.cdeB.字符cC.字符c的地址 D.无确定的输出结果解析:解析 对于字符串指针,其保留的是整个串的首地址,即第一个字符的起始地址;当该指针做算术运算时,就是该指针根据其类型向后移动相应的存储空间。17.需求分析阶段的任务是确定(分数:1.00)A.软件开发方法B.软件开发工具C.软件开发费用D.软件系统功能 解析:解析 需求分析是软件定义时期的最后一个阶段,它的基本任务就是详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统的工作概况,明确用户的各种需求,然后
16、在此基础上确定新系统的功能。选项 A) 软件开发方法是在总体设计阶段需完成的任务;选项 B) 软件开发工具是在实现阶段需完成的任务;选项 C) 软件开发费用是在可行性研究阶段需完成的任务。18.栈底至栈顶依次存放元素 A、B、C、D,在第五个元素 E入栈前,栈中元素可以出栈,则出栈序列可能是(分数:1.00)A.ABCEDB.DCBEA C.DBCEAD.CDABE解析:解析 栈操作原则上“后进先出”,栈底至栈顶依次存放元素 A、B、C、D,则表明这 4个元素中D是最后进栈, B、C 处于中间,A 最早进栈,所以出栈时一定是先出 D,再出 C,最后出 A。19.关系表中的每一横行称为一个(分数
17、:1.00)A.元组 B.字段C.属性D.码解析:解析 关系表中,每一行称为一个元组,对应表中的一条记录;每一列称为一个属性,对应表中的一个字段;在二维表中凡能唯一标识元组的最小属性集称为该表的键或码。20.程序流程图中带有箭头的线段表示的是(分数:1.00)A.图元关系B.数据流C.控制流 D.调用关系解析:解析 程序流程图是人们对解决问题的方法、思路或算法的一种图形方式的描述。其中,图框表示各种操作的类型,图框中的文字和符号表示操作的内容;流程线表示操作的先后次序。带箭头的线段在数据流程图中表示数据流;带箭头的线段在程序流程图中表示控制流。题中给出的选项中,在图元之间用带有箭头的线段表示图
18、元关系。在模块之间用带有箭头的线段表示调用关系。21.若有以下定义:struct linkint data;strnct link *next;a,b,c,*p,*q;且变量 a和 b之间已有如下图所示的链表结构:(分数:2.00)A.B.C.D. 解析:解析 本题考查链表的数据结构,必须利用指针变量才能实现,即一个结点中应包含一个指针变量,用它存放下一结点的地址。22.下列有关数据库的描述,正确的是(分数:2.00)A.数据处理是将信息转化为数据的过程B.数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变C.关系中的每一列称为元组,一个元组就是一个字段D.如果一个关系中的属性或属
19、性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字 解析:解析 数据处理是指将数据转换成信息的过程,故选项 A) 叙述错误;数据的物理独立性是指数据的物理结构的改变,不会影响数据库的逻辑结构,故选项 B) 叙述错误;关系中的行称为元组,对应存储文件中的记录,关系中的列称为属性,对应存储文件中的字段,故选项 C) 叙述错误。23.以下叙述中错误的是(分数:2.00)A.在程序中凡是以“#”开始的语句行都是预处理命令行B.预处理命令行的最后不能以分号表示结束C.#define MAX是合法的宏定义命令行D.C程序对预处理命令行的处理是在程序执行的过程中进行的 解析:解析 C
20、 语言中的预处理命令以符号#开头,这些命令是在程序编译之前进行处理的,选项 D) 的描述错误。24.将 E-R图转换到关系模式时,实体与联系都可以表示成(分数:2.00)A.属性B.关系 C.键D.域解析:解析 关系数据库逻辑设计的主要工作是将 E-R图转换成指定 RDBMS中的关系模式。首先,从E-R图到关系模式的转换是比较直接的,实体与联系都可以表示成关系,E-R 图中属性也可以转换成关系的属性,实体集也可以转换成关系。25.以下叙述中错误的是(分数:2.00)A.gets函数用于从终端读入字符串B.getchar函数用于从磁盘文件读入字符 C.fputs函数用于把字符串输出到文件D.fw
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 67 答案 解析 DOC
