【计算机类职业资格】二级C语言笔试-453及答案解析.doc
《【计算机类职业资格】二级C语言笔试-453及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-453及答案解析.doc(29页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试-453 及答案解析(总分:97.00,做题时间:90 分钟)一、选择题(总题数:40,分数:63.00)1.下列选项中,不是一个算法的基本特征的是( )。A) 完整性 B) 可行性 C) 有穷性 D) 拥有足够的情报(分数:2.00)A.B.C.D.2.下列数据结构中,属于非线性的是( )。A) 线性表 B) 队列 C) 树 D) 栈(分数:2.00)A.B.C.D.3.检查软件产品是否符合需求定义的过程称为A) 确认测试 B) 集成测试 C) 验证测试 D) 验收测试(分数:2.00)A.B.C.D.4.下列叙述中,不属于测试的特征的是A) 测试的挑剔性 B) 完全测试的
2、不可能性 C) 测试的可靠性 D) 测试的经济性(分数:2.00)A.B.C.D.5.模块本身的内聚是模块独立性的重要性度量因素之。在 7 类内聚中,具有最强内聚的项是_。A) 顺序性内聚 B) 过程性内聚 C) 逻辑性内聚 D) 功能性内聚(分数:2.00)A.B.C.D.6.在深度为 7 的满二叉树中,叶子结点的个数为A) 32 B) 31C) 64 D) 63(分数:2.00)A.B.C.D.7.待排序的关键码序列为(15,20,9,30,67,65,45,90),要按关键码值递增的顺序排序,采取简单选择排序法,第一趟排序后关键码 15 被放到第( )个位置。 A) 2 B) 3 C)
3、4 D) 5(分数:2.00)A.B.C.D.8.有以下程序:main()unsigped int a;int b=-1;a=b;printf(“% u“, a);程序运行后的输出结果是_。A) -1 B) 65535 C) 32767 D) -32768(分数:2.00)A.B.C.D.9.在软件设计中,不属于过程设计工具的是( )。A) PDL(过程设计语言) B) PAD 图 C) N-S 图 D) DFD 图(分数:1.00)A.B.C.D.10.对如图所示的二叉树进行中序遍历的结果是(分数:2.00)A.B.C.D.11.在结构化方法中,软件功能分解属于软件开发中的( )阶段。A)
4、详细设计 B) 需求分析 C) 总体设计 D) 编程调试(分数:1.00)A.B.C.D.12.下列说法正确的是( )。A) main 函数必须放在 C 程序的最后面B) main 函数必须放在 C 程序的最前面C) main 函数可以放在 C 程序的中间部分,但在执行 C 程序时是从程序开头执行的D) main 函数可以放在 C 程序的中间部分,但在执行 C 程序时是从 main 函数开始的(分数:1.00)A.B.C.D.13.以下叙述中错误的是_。A) 算法正确的程序最终一定会结束B) 算法正确的程序可以有零个输出C) 算法正确的程序可以有零个输入D) 算法正确的程序对于相同的输入一定有
5、相同的结果(分数:2.00)A.B.C.D.14.下列说法正确的是( )。A) 在 C 程序中,main()函数必须位于程序的最前面B) 在 C 程序中,一条语句只能写一行而不能写多行C) C 程序是以行为基本单位的D) C 语言本身没有输入输出语句(分数:1.00)A.B.C.D.15.下面四个选项中,均是不正确的八进制数或十六进制数的选项是A) 016 0x8f 018 B) 0abc 017 0xaC) 010 -0x11 0x16 D) 0a12 7ff -123(分数:1.00)A.B.C.D.16.以下选项中,不能作为合法常量的是_。A) 1.234e04 B) 1.234e0.4
6、 C) 1.234e+4 D) 1.234e0(分数:2.00)A.B.C.D.17.以下定义语句中正确的是_。A) int a=b=0; B) char A=65+1,b=b;C) float a=1,*b=a,*c=b;D) double a=0.0;b=1.1;(分数:1.00)A.B.C.D.18.下列叙述中错误的是( )。 A) C 语句必须以分号结束 B) 复合语句在语法上被看作一条语句 C) 空语句出现在任何位置都不会影响程序运行 D) 赋值表达式末尾加分号就构成赋值语句(分数:1.00)A.B.C.D.19.有以下程序int add(int a,int b)return(a+b
7、);main()int k,(*f)(),a=5,b=10;f=add;则以下函数调用语句错误的是A) k=(*f)(a,b); B) k=add(a,b);C) k=*f(a,b); D) k=f(a,b);(分数:1.00)A.B.C.D.20.在 ASCII 代码表中每一个大写字母比它相应的小写字母的 ASCII 码( )A) 小 32 B) 小 64 C) 大 32 D) 大 1(分数:2.00)A.B.C.D.21.若有下列定义和语句:int u=011,v=0x11,w=11;printf(“%o,%x,%d/n“,u,v,w);则输出结果是( )。A) 9,17,11 B) 9,
8、11,11 C) 11,11,11 D) 11,17,11(分数:2.00)A.B.C.D.22.有以下程序:#include stdio. h main( )int m =3,n =4,x;x= -m+;x=x+8/+n;prinff(“ % d /n“ ,x);程序运行后的输出结果是( )。 A) 3 B) 5 C) -1 D) -2(分数:1.00)A.B.C.D.23.以下程序运行时,输入的值在哪个范围才会有输出结果?#includestdio.hmain()int x;Scanf(“%d“, if(x=3); elseif(x!=10) printf(“%d/n“, x);A) 不等
9、于 10 的整数 B) 大于 3 且不等于 10 的整数C) 大于 3 或等于 10 的整数 D) 小于 3 的整数(分数:1.00)A.B.C.D.24.以下程序运行后的输出结果是#includestdio.hmain()int c=0, k;for(k=1; k3; k+)switch(k)default: c+=k;case 2: c+; break; case 4: c+=2; break;printf(“%d/n“, c);A) 3 B) 5 C) 7 D) 9(分数:1.00)A.B.C.D.25.为了避免在嵌套的条件语句 if else 中产生二义性,C 语言规定,else 子句
10、总是与( )配对。A) 缩排位置相同 if B) 其前面最近的 ifC) 其后面最近的 if D) 同一行上的 if(分数:1.00)A.B.C.D.26.下列程序的运行结果是( )。main()int a=-5,b=1,c=1;int x=0,Y=2,z=0;if(c0)x=x+ y;if(a=0)if(b0)if(c=0)y=x-y;else if(c0)Y=x-y;else z=y;printf(“%d,%d,%d/n“,x,y,z);A) 2,2,0 B) 2,2,2 C) 0,2,0 D) 2,0,2(分数:1.00)A.B.C.D.27.以下程序中函数 reverse 的功能是对
11、a 所指数组中的内容进行逆置。void reverse(int a, int n)int i, t;for(i=0; in/2; i+)t=ai; ai=an-1-1; an-1-i=t;main()int b10=1, 2, 3, 4, 5, 6, 7, 8, 9, 10;int i, s=0;reverse(b, 8);for(i=6; i10; i+)s+=bi;printf(“% d/n“, s);程序运行后的输出结果是_。A) 22 B) 10 C) 34 D) 30(分数:1.00)A.B.C.D.28.有下列程序段:int k=0,a=1,b=2,c=3;k=ab?b:a; k=
12、kc?c:k;执行该程序段后,k 的值是( )。A) 3 B) 2 C) 1 D) 0(分数:2.00)A.B.C.D.29.有下列函数定义:fun(float h)printf(“%f,%f/n”,h,h*h);该函数的类型是( )。A) int 类型 B) float 类型C) void 类型 D) 函数无类型说明,定义有错(分数:2.00)A.B.C.D.30.向 student 表插入一条新记录的正确 SQL 语句是_。A) APPEND INTO student VALUES(0401,王芳,女,18)B) APPEND student VALUES(0401,王芳,女,18):C)
13、 INSERT INTO student VALUES(0401,王芳,女,18)D) INSERT student VALUES(0401,王芳,女,18)(分数:2.00)A.B.C.D.31.有以下程序main()int i;for(i=1;i=40;i+)if(i+%5=0)if(+i%8=0) pfintf(“%d“,i);printf(“/n“);执行后的输出结果是A) 5 B) 24 C) 32 D) 40(分数:2.00)A.B.C.D.32.有以下程序#includestdiohmain()FILE *fP;int k,n,a6=1,2,3,4,5,6;fp=fopen(“d
14、2.dat“,“w“);fprintf(fp,“%d%d%d/n“,a0,a1,a2);fprintf(fp,“%d%d%d/n“,a3,a4,a5);fclose(fp);fp=fopen(“d2dat“,“r“);fscanf(fp,“%d%d“,i4;i+)s+=aai2;printf(“%d“,s);程序运行后的输出结果是( )。A) 26 B) 19 C) 10 D) 20(分数:2.00)A.B.C.D.35.下列程序的输出结果是( )。#inCludestdio.hmain()char ch25=“1234“,“5678,*p2;int i,j,s=0;for(i=0;i2;i+
15、)pi=chi;for(i=0;i2;i+)for(j=0;pij/0;j+=2)s=pij-0;printf(“%d“,s);A) 6357 B) 6135 C) 1357 D) 691357(分数:2.00)A.B.C.D.36.下列程序的输出结果是( )。point(char*pt);main()char b4=a,c,s,f,*pt=b;pt=point(pt);printf(“%c/n“,*pt);point(char*p)p+=3;return p;A) s B) c C) f D) a(分数:1.00)A.B.C.D.37.已知形成链表的存储结构如下图所示,则下述类型描述中的空白
16、处应填 _。struct linkchar data;_;node;(分数:2.00)A.B.C.D.38.设有定义“char*c;”,以下选项中能够使字符型指针 c 正确指向一个字符串的是( )。Achar str=“string“;c=str; Bscanf(%s,c);Cc=getchar(); D*c=“string“;(分数:1.00)A.B.C.D.39.变量 a 中的数据用二进制表示的形式是 01011101,变量 b 中的数据用二进制表示的形式是 11110000。若要求将 a 的高 4 位取反,低 4 位不变,所要执行的运算是A) ab B) a|b C) aa=(3*5,a
17、+4);printf(“a=%d/n“,a);(分数:2.00)填空项 1:_46.若 x 和 y 都是 double 型变量,且 x 的初值为 3.0,y 的初值为 2.0,则表达式 pow(y,fabs(x)的值为U /U。(分数:2.00)填空项 1:_47.若有语句“doube x=17;int y;”,当执行“y=(int)(x/5)%2;”之后 y 的值为 1。(分数:4.00)填空项 1:_48.下列程序的输出结果是_。#includestdio.hmain()int x=1, y=1,a=1,b=1;switch(x)case 1:switch (y)case 0:a+; br
18、eak;case 1:b+; break;case2: a+: b+; break;printf(“a=%d,b=%d/n“,a,b);(分数:4.00)填空项 1:_49.当调用函数时,实参是一个数组名,则向函数传递的是U /U。(分数:2.00)填空项 1:_50.若有定义 floatb15,*pb;,且数组 b 的首地址为 200H,则 p/13 所指向的数组元素的地址为 1。(分数:2.00)填空项 1:_51.以下程序的输出结果是U /U。# define MCNA(m)2*m# define MCNB(n, m)2*MCRA(n)+m# define f(x)(x*x)main()
19、int i=2, j=3;printf(“% d/n“, MCRB(j, MCRA(i);(分数:2.00)填空项 1:_52.以下程序的输出结果是U /U。#includestdiohmain()int a=0;a+ =(a=8);printf(“%d/n“,a);(分数:2.00)填空项 1:_53.以下程序中给指针 p 分配 3 个 double 型动态内存单元,请填空。# includestdllb. hmain()double * p;p=(double*)malloc(U /U);p0=1.5; p1=2.5; p2=3.5printf(“% f % f % f/n“,p0,p1,
20、 p2);(分数:2.00)填空项 1:_54.下面程序的运行结果是_。 #define POW(r)r*r main() int x=2,y=3,t; t=POW(x+y); printf(“%d/n“,t); (分数:2.00)填空项 1:_55.下列程序的输出结果是_.#include stdio.hfun ()static int a=O;a+=3; printf(“%d“,a);main ()int cc;for (cc=1;cc5;cc+) fun();printf (“/n“);(分数:2.00)填空项 1:_二级 C 语言笔试-453 答案解析(总分:97.00,做题时间:90
21、 分钟)一、选择题(总题数:40,分数:63.00)1.下列选项中,不是一个算法的基本特征的是( )。A) 完整性 B) 可行性 C) 有穷性 D) 拥有足够的情报(分数:2.00)A. B.C.D.解析:解析 作为一个算法,一般应该具有下列 4 个特征:可行性,即考虑到实际的条件能够达到一个满意的结果;确定性,算法中的第一个步骤都必须是有明确定义的:有穷性,一个算法必须在有限的时间内做完;拥有足够的情报。2.下列数据结构中,属于非线性的是( )。A) 线性表 B) 队列 C) 树 D) 栈(分数:2.00)A.B.C. D.解析:解析 线性结构,是指数据元素只有一个直接前件元素和直接后件元素
22、。线性表是线性结构。栈和队列是指对插入和删除操作有特殊要求的线性表,树是非线性结构。3.检查软件产品是否符合需求定义的过程称为A) 确认测试 B) 集成测试 C) 验证测试 D) 验收测试(分数:2.00)A. B.C.D.解析:解析 确认测试的任务是验证软件的功能和性能,以及其他特性是否满足需求规格说明中确定的各种需求;集成测试的主要目的是发现与接口有关的错误。4.下列叙述中,不属于测试的特征的是A) 测试的挑剔性 B) 完全测试的不可能性 C) 测试的可靠性 D) 测试的经济性(分数:2.00)A.B.C. D.解析:解析 软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给
23、出程序可靠性的鉴定。它有 3 个方面的重要特征,即测试的挑剔性、完全测试的不可能性及测试的经济性。其中,没有测试的可靠性这一说法。5.模块本身的内聚是模块独立性的重要性度量因素之。在 7 类内聚中,具有最强内聚的项是_。A) 顺序性内聚 B) 过程性内聚 C) 逻辑性内聚 D) 功能性内聚(分数:2.00)A.B.C.D. 解析:评析 内聚性是个模块内部各元素间彼此结合的紧密程度的度量。内聚共有 7 类,它们之间的内聚性由弱到强排列顺序为:偶然内聚、逻辑内聚,时间内聚、过程内聚、通信内聚、顺序内聚和功能内聚。6.在深度为 7 的满二叉树中,叶子结点的个数为A) 32 B) 31C) 64 D)
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 453 答案 解析 DOC
