【计算机类职业资格】二级C语言笔试-408及答案解析.doc
《【计算机类职业资格】二级C语言笔试-408及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-408及答案解析.doc(31页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试-408 及答案解析(总分:97.00,做题时间:90 分钟)一、选择题(总题数:40,分数:63.00)1.常采用的两种存储结构是( )。A顺序存储结构和链式存储结构 B散列方法和索引方式C链表存储结构和数组 D线性存储结构和非线性存储结构(分数:1.00)A.B.C.D.2.软件是指A) 程序 B) 程序和文档C) 算法加数据结构 D) 程序、数据与相关文档的完整集合(分数:2.00)A.B.C.D.3.下列叙述中正确的是( )。A对长度为 n的有序链表进行查找,最坏情况下需要的比较次数为 nB对长度为 n的有序链表进行对分查找,最坏情况下需要的比较次数为 n/2C对长度为
2、 n的有序链表进行对分查找,最坏情况下需要的比较次数为 log2nD对长度为 n的有序链表进行对分查找,最坏情况下需要的比较次数为 nlog2n(分数:1.00)A.B.C.D.4.按照“先进先出”组织数据的数据结构是( )。A) 队列 B) 栈 C) 双向链表 D) 二叉树(分数:2.00)A.B.C.D.5.按照“先进先出”组织数据的数据结构是( )。A) 队列 B) 栈 C) 双向链表 D) 二叉树(分数:2.00)A.B.C.D.6.简单的交换排序方法是( )。A快速排序 B选择排序C堆排序 D冒泡排序(分数:1.00)A.B.C.D.7.栈通常采用的两种存储结构是A) 顺序存储结构和
3、链式存储结构 B) 散列方式和索引方式C) 链表存储结构和数组 D) 线性存储结构和非线性存储结构(分数:2.00)A.B.C.D.8.下列叙述中正确的是A) 线性链表是线性表的链式存储结构 B) 栈与队列是非线性结构C) 双向链表是非线性结构 D) 只有根结点的二叉树是线性结构(分数:2.00)A.B.C.D.9.在设计程序时,应采纳的原则之一是_。A) 程序结构应有助于读者理解 B) 不限制 goto语句的使用C) 减少或取消注解行 D) 程序越短越好(分数:2.00)A.B.C.D.10.线性表的顺序存储结构和线性表的链式存储结构分别是A) 顺序存取的存储结构、顺序存取的存储结构 B)
4、随机存取的存储结构、顺序存取的存储结构C) 随机存取的存储结构、随机存取的存储结构 D) 任意存取的存储结构、任意存取的存储结构(分数:1.00)A.B.C.D.11.在深度为 7的满二叉树中,叶子结点的个数为( )。A) 32 B) 31 C) 64 D) 63(分数:1.00)A.B.C.D.12.以下有 4组用户标识符,其中合法的一组是( )。AFOr-subCaseB4dDOSizeCf2_G3IFabcDWORDvoiddefine(分数:1.00)A.B.C.D.13.数据库系统的核心是( )。A) 数据模型 B)数据库管理系统 C) 数据库 D) 数据库管理员(分数:1.00)A
5、.B.C.D.14.设有表示学生选课的三张表,学生 S(学号,姓名,性别,年龄,身份证号),课程 C(课号,课名),选课 SC(学号,课号,成绩),则表 SC的关键字(键或码)为A) 课号,成绩 B) 学号,成绩 C) 学号,课号 D) 学号,姓名,成绩(分数:2.00)A.B.C.D.15.以下程序的输出结果是( )。main()int a=3;printf(“%d/n“,(a+a-=a*a);A-6 B12 C0 D-12(分数:1.00)A.B.C.D.16.若有运算符:、=、%、sizeof,则它们按优先级(由高至低)的正确排列顺序为( )。A) %、sizeof、= B) sizeo
6、f、%、=、C) sizeof、%、= D) sizeof、%、=(分数:1.00)A.B.C.D.17.下列选项中不合法的十六进制数是( )。A) Oxff B) OXll C) Oxlg D) OXabc(分数:2.00)A.B.C.D.18.下列各数据类型不属于构造类型的是( )。A) 枚举型 B) 共用型 C) 结构型 D) 数组型(分数:1.00)A.B.C.D.19.C源程序中不能表示的数制是_。A) 二进制 B) 八进制 C) 十进制 D) 十六进制(分数:1.00)A.B.C.D.20.若有下列定义(设 int类型变量占 2个字节):int i=8;则下列语句:printf(“
7、i=%08d“,i);输出的结果是( )。A) i=8, B) i=00000008, C) i=08, D) 8(分数:1.00)A.B.C.D.21.有以下程序:main()int i=1,j=2,k=3;if(i+=l(+j=3|k+=3) printf(“%d%d%d/n“,i,j,k):程序运行后的输出结果是_。A) 1 2 3 B) 2 3 4 C) 2 2 3 D) 2 3 3(分数:2.00)A.B.C.D.22.有下列程序:#includestdio.hmain()int a=6,b=7,m=1;switch(a%2) case 0:m+;break;case 1:m+;sw
8、itch(b%2) defaut:m+;case0:m+;break;printf(“%d/n“,m);程序运行后的输出结果是( )。A) 1 B) 2 C) 3 D) 4(分数:2.00)A.B.C.D.23.执行下面程序中的输出语句后,a 的值是( )。#include stdio.hmain()int a;printf(“%d/n“,(a=3*5,a*4);A) 15 B) 20 C) 10 D) 60(分数:1.00)A.B.C.D.24.有以下程序#include stdio.hmain()int a=1,b=2,c=3,d=0;if(a1else printf(%d,%d,%d/n
9、“,a,b,c);else printf(“%d,%d,%o/n“,a,b,c);程序运行后的输出结果是_。A) 1,2,3 B) 1,3,2 C) 1,3,3 D) 3,2,1(分数:2.00)A.B.C.D.25.下列程序的输出结果是( )。#includestdio.hmain()int a0,i;for(i1;i5;i+)Switch(i)case 0:case 3:a+1;case 1:case 2:a+2;default:a+3;printf(“%d“,a) :A) 19 B) 18 C) 6 D) 8(分数:2.00)A.B.C.D.26.已知大写字母 A的 ASCII码是 65
10、,小写字母的 a的 ASCII码是 97,以下不能将变量 C中的大写字母转换为对应小写字母的语句是_。(A) c=(c-A)%26+a(B) c=c+32(C) c=c-A+a(D) c=(A+c)%26-a(分数:2.00)A.B.C.D.27.若执行下述程序时,若从键盘输入 6和 8,结果为( )。 main() int a,b,s; scanf(“%d%dt“, B) if(xyC) if(x0)x-elsey+;D) if(y0);else x+;(分数:2.00)A.B.C.D.29.若运行时给变量 x输入 12,则以下程序的运行结果是main( )int x,y;scanf(“%d
11、“, A) 0 B) 22 C) 12 D) 10(分数:2.00)A.B.C.D.30.在 C语言中,函数返回值的类型最终取决于( )。A) 函数定义时在函数首部所说明的函数类型B) return语句中表达式值的类型C) 调用函数时主调函数所传递的实参类型D) 函数定义时形参的类型(分数:2.00)A.B.C.D.31.下列程序的输出结果是( )。#includestdio.hmain()char a= a,b,c,d,e,f,/0;int i,j;i=sizeof(a);j=strlen(a);print f(“%d,%d“,i,j );A) 7,7 B) 7,6 C) 6,6 D) 6,
12、7(分数:2.00)A.B.C.D.32.现有如下程序段#include “stdio.h“main( )int a56=23,3,65,21,6,78,28,5,67,25,435,76,8,22,45,7,8,34,6,78,32,4,5,67,4,21,1;int i=0,j=5;printf(“%d/n“,*(则程序的输出结果为A)21 B)78 C)23 D)28(分数:2.00)A.B.C.D.33.以下程序运行后的输出结果是#includestdio.hint fun()static int x=1;x*=2; return x;main()int i, s=1;for(i=1;
13、 i=2; i+) s=fun();printf(“%d/n“, s);A) 0 B) 1 C) 4 D) 8(分数:2.00)A.B.C.D.34.C语言允许函数类型缺省定义,此时函数值隐含的类型是( )。A) float B) int C) long D) double(分数:1.00)A.B.C.D.35.若有定义“int b8,*p=b;”,则 p+6表示( )。A数组元素 b6的值 B数组元素 b6的地址C数组元素 b7的地址 D数组元素 b0的值加上 6(分数:1.00)A.B.C.D.36.有以下程序:#includestdio.h#includestring.htypedef
14、structchar name9;char sex;float score2;)STU;void f(STU a)STU b=“Zhao“,m,85.0,90.0);int i;strcpy(a.name,b.name);a.sex=b.sex;for(i=0;i2;i+)a.scorei=b.scorei;main()STU c=“Qian“,f,95.0,92.0);f(C) ;printf(“%s,%c,%2.0f,%2.0f/n“,c.name,c.sex,c.score0,C.score1);程序的运行结果是_。A) Qian,f,95,92 B) Qian,m,85,90C) Zh
15、ao,f,95,92 D) Zhao,m,85,90(分数:2.00)A.B.C.D.37.设有定义“char*c;”,以下选项中能够使字符型指针 c正确指向一个字符串的是( )。Achar str=“string“;c=str; Bscanf(%s,c);Cc=getchar(); D*c=“string“;(分数:1.00)A.B.C.D.38.表达式 0x130x17的值是( )。A) 0x04 B) 0x13 C) 0xE8 D) 0x17(分数:1.00)A.B.C.D.39.设有以下说明,则不正确的叙述是( )。 union un int a; chat b: float c; a
16、rr; A) arr所占的内存长度等于成员 c的长度 B) arr的地址和它的各成员的地址都是同一地址 C) arr可以作为函数参数 D) 不能在定义 art时对它初始化(分数:2.00)A.B.C.D.40.设有定义语句 int(*f(int);,则下列叙述正确的是( )。A) f是基类型为 int的指针变量B) f是指向函数的指针变量,该函数具有一个 int类型的形态C) f是指向 int类型一维数组的指针变量D) f是函数名,该函数的返回值是其类型为 int类型的地址(分数:2.00)A.B.C.D.二、填空题(总题数:15,分数:34.00)41.软件工程研究的内容主要包括:软件开发技
17、术和 1。(分数:2.00)填空项 1:_42.深度为 5的满二叉树中,叶子结点的个数为 1。(分数:2.00)填空项 1:_43.在面向对象的程序设计方法中,类的实例称为 1。(分数:2.00)填空项 1:_44.在面向对象方法中,类之间共享属性和方法的机制称为 1。(分数:2.00)填空项 1:_45.最简单的交换排序方法是 1。(分数:2.00)填空项 1:_46.在 E-R图中图形包括矩形框、菱形框、椭网框。其中表示实体联系的是 1 框。(分数:4.00)填空项 1:_47.设 y是 int型,请写出 y为奇数的关系表达式 1。(分数:2.00)填空项 1:_48.设有以下定义和语句,
18、则*(*(p+2) +1) 的值为_。int a32=10,20,30,40,50,60,(*p) 2;p=a;(分数:2.00)填空项 1:_49.下列循环的循环次数是_。int k=2;while(k=0)printf(“%d“,k);k-;printf(“/n“);(分数:2.00)填空项 1:_50.以下程序的功能是输入任意整数给 n后,输出 n行由大写字母 A开始构成的三角形字符阵列图形。例如,输入整数 5时(注意:n 不得大于 10),程序运行结果如下:A B C D EF G H IJ K LM NO请填空完成该程序。main()int i,j,n;char ch=A;scanf
19、(“%d“,for(i=1; i=n; i+)m+=i*f;f=_;return m;main()printf(“% d/n“,U /U);(分数:2.00)填空项 1:_52.以下程序是求矩阵 a、b 的和,结果存入矩阵 c中,请填空。 #includestdio.h main() int a44=1,2,6,7,0,4,2,-8,1,4,5,2,2,4,6,8; int b44=-4,0,7,9,2,-7,7,4),6,9,0,1),8,8,6,5); int i,j,c44; for(i=0;i4;i+) for(j=0;j4;j+) cij=_; for(i=0;i4;i+) for(
20、j=0;j4;j+) printf(“%d“,cij); (分数:2.00)填空项 1:_53.以下程序的功能是从名为 filea.dat的文本文件中逐个读入字符并显示在屏幕上。请填空。majn()FILE *fp; char ch;fp=fopen(_);ch=fgetc(fp);whle(!feof(fp) putchar(ch); ch=f8etc(fp); putchar(/n); fclose(fp);(分数:2.00)填空项 1:_54.已知字符A的 ASCII码值为 65,以下语句的输出结果是U /U。char ch=B;printf(“%c%d/n“,ch,ch);(分数:2.
21、00)填空项 1:_55.以下程序中,for 循环体执行的次数是_。#defihe N 2#define M N+1#define K M+1*M/2main()int i;for (i=1 ; iK ; i+ )(分数:2.00)填空项 1:_二级 C语言笔试-408 答案解析(总分:97.00,做题时间:90 分钟)一、选择题(总题数:40,分数:63.00)1.常采用的两种存储结构是( )。A顺序存储结构和链式存储结构 B散列方法和索引方式C链表存储结构和数组 D线性存储结构和非线性存储结构(分数:1.00)A. B.C.D.解析:解析 线性表的存储通常要用两种存储结构:顺序存储结构和链
22、式存储结构。2.软件是指A) 程序 B) 程序和文档C) 算法加数据结构 D) 程序、数据与相关文档的完整集合(分数:2.00)A.B.C.D. 解析:解析 软件是程序、数据与相关文档的集合,相对于计算机硬件而言,软件是逻辑产品而不是物理产品,是计算机的无形部分。3.下列叙述中正确的是( )。A对长度为 n的有序链表进行查找,最坏情况下需要的比较次数为 nB对长度为 n的有序链表进行对分查找,最坏情况下需要的比较次数为 n/2C对长度为 n的有序链表进行对分查找,最坏情况下需要的比较次数为 log2nD对长度为 n的有序链表进行对分查找,最坏情况下需要的比较次数为 nlog2n(分数:1.00
23、)A.B.C. D.解析:解析 二分法查找只适用于顺序存储的有序表,对于长度为 n的有序线性表,最坏情况只需比较log2n次。4.按照“先进先出”组织数据的数据结构是( )。A) 队列 B) 栈 C) 双向链表 D) 二叉树(分数:2.00)A. B.C.D.解析:解析 队列是一种特殊的线性表,只允许在表的一端插入元素,在表的另一端删除元素,插入元素的一端叫“队尾”,删除元素的一端叫“队头”,先插入的元素先被删除,是按“先进先出”的原则组织数据的。5.按照“先进先出”组织数据的数据结构是( )。A) 队列 B) 栈 C) 双向链表 D) 二叉树(分数:2.00)A. B.C.D.解析:解析 队
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 408 答案 解析 DOC
