【计算机类职业资格】二级C语言笔试-89及答案解析.doc
《【计算机类职业资格】二级C语言笔试-89及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-89及答案解析.doc(27页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试-89 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:40.00)1.若有定义语句“int m=5,4,3,2,1,i=4;”,则下列对 m 数组元素的引用中错误的是( )。(分数:1.00)A.m-iB.m2*2C.mm0D.mmi2.在软件开发中,需求分析阶段可以使用的工具是( )。(分数:1.00)A.N-S 图B.DFD 图C.PAD 图D.程序流程图3.有下列程序:#includestdio.hvoid fun(int a,int b)int t;t=a;a=b;b=t;main()int c10=1,2,3,4,5,6,7,
2、8,9,0,i;for(i=0;i10;i+=2)fun(ci,ci+1);for(i=0;i10;i+)printf(“%d,“,ci);printf(“/n“);程序的运行结果是( )。(分数:1.00)A.1,2,3,4,5,6,7,8,9,0B.2,1,4,3,6,5,8,7,0,9C.0,9,8,7,6,5,4,3,2,1D.0,1,2,3,4,5,6,7,8,94.若有表达式(w)(-x):(+y),则其中与 w 等价的表达式是( )。(分数:1.00)A.w=1B.w=0C.w!=1D.w!=05.有下列程序:#includestdio.h#includestdlib.hint
3、fun(int n)int*p;p=(int*)malloc(sizeof(int);*p=n;return*p:main()int a;a=fun(10);printf(“%d/n“,a+fun(10);程序的运行结果是( )。(分数:1.00)A.0B.10C.20D.出错6.下列叙述中错误的是( )。(分数:1.00)A.用户定义的函数中可以没有 return 语句B.用户定义的函数中可以有多个 return 语句,以便可以调用一次返回多个函数值C.用户定义的函数中若没有 return 语句,则应当定义函数为 void 类型D.函数的 return 语句中可以没有表达式7.下列选项中正确
4、的定义语句是( )。(分数:1.00)A.double a;b;B.double a=b=7;C.double a=7,b=7D.double a,b;8.有下列程序:#includestdio.h#define N 4void fun(int aN,int b)int i;for(i=0;iN;i+)bi=aii;main()int xN=1,2,3),4),5,6,7,8,9,10),yN,i;fun(x,y);for(i=0;in;i+)printf(“%d“,yi);printf(“/n“);程序的运行结果是( )。(分数:1.00)_9.执行下列程序后,w 的值为( )。int w=
5、A,x=14,y=15;w=(x| y)&(wa);(分数:1.00)A.-1B.NULLC.1D.010.计算机能直接执行的程序是( )。(分数:1.00)A.源程序B.目标程序C.汇编程序D.可执行程序11.有下列程序:#includestdio.hmain()int i,j;for(i=3;i=1;i-)for(j=1;j=2;j+)printf(“%d“,i+j);printf(“/n“);程序的运行结果是( )。(分数:1.00)A.2 3 43 4 5B.4 3 25 4 3C.2 33 44 5D.4 53 42 312.在数据管理技术发展的三个阶段中,数据共享最好的是( )。(
6、分数:1.00)A.人工管理阶段B.文件系统阶段C.数据库系统阶段D.三个阶段相同13.下面的函数调用语句中 func 函数的实参个数是( )。func(f2(v1,v2),(v3,v4,v5),(v6,max(v7,v8);(分数:1.00)A.3B.4C.5D.814.有下列程序:#includestdio.hmain()int x=1,y=2,z=3;if(xy)if(yz)printf(“%d“,+z);else printf(“%d“,+y);printf(“%d/n“,x+);程序的运行结果是( )。(分数:1.00)A.331B.41C.2D.115.下列选项中不能作为 C 语言
7、合法常量的是( )。(分数:1.00)A.cdB.0.1e+6C.“/a“D./01116.若有定义语句:double x5=1.0,2.0,3.0,4.0,5.0,*p=x,则错误引用 x 数组元素的是( )。(分数:1.00)A.*pB.x5C.*(p+1)D.*x17.有下列程序段:int a,b,c;a=10;b=50;c=30;if(ab)a=b;b=c;c=a;printf(“a=%db=%d c=%d/n“,a,b,c);程序的输出结果是( )。(分数:1.00)A.a=10 b=50 c=10B.a=10 b=50 c=30C.a=10 b=30 c=10D.a=50 b=30
8、 c=5018.有下列程序:#includestdio.hint fun(int a,int b)if(b=0)return a;else return(fun(-a,-b);main()printf(“%d/n“,fun(4,2);程序的运行结果是( )。(分数:1.00)A.1B.2C.3D.419.若变量已正确定义为 int 型,要通过语句 scanf(“%d,%d“,&a,&b,&c);给 a 赋值 1、给 b 赋值 2、给 c 赋值 3,以下输入形式中错误的是(代表一个空格符)( )。(分数:1.00)A.1,2,3回车B.122回车C.1,2,3回车D.1,2,3回车20.一个栈的
9、初始状态为空。现将元素 1、2、3、4、5、A、B、C、D、E 依次入栈,然后再依次出栈,则元素出栈的顺序是( )。(分数:1.00)A.12345ABCDEB.EDCBA54321C.ABCDE12345D.54321EDCBA21.下列叙述中正确的是( )。(分数:1.00)A.C 程序的基本组成单位是语句B.C 程序中的每一行只能写一条语句C.简单 C 语句必须以分号结束D.C 语句必须在一行内写完22.下列叙述中正确的是( )。(分数:1.00)A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C.在循环队列中,
10、只需要队尾指针就能反映队列中元素的动态变化情况D.循环队列中元素的个数是由队头指针和队尾指针共同决定的23.在面向对象方法中,不属于“对象”基本特点的是( )。(分数:1.00)A.一致性B.分类性C.多态性D.标识唯一性24.数据流图中带有箭头的线段表示的是( )。(分数:1.00)A.控制流B.事件驱动C.模块调用D.数据流25.有下列程序:#includestdio.hvoid fun(int a,int n)int i,t;for(i=0;in/2;i+)t=ai;ai=an-1-i;an-1-i=t;main()int k10=(1,2,3,4,5,6,7,8,9,10),i;fun
11、(k,5);for(i=2;i8;i+)printf(“%d“,ki);printf(“/n“);程序的运行结果是( )。(分数:1.00)A.345678B.876543C.1098765D.32167826.一间宿舍可住多个学生,则实体宿舍和学生之间的联系是( )。(分数:1.00)A.一对一B.一对多C.多对一D.多对多27.在长度为 n 的有序线性表中进行二分查找,最坏情况下需要比较的次数是( )。(分数:1.00)A.O(n)B.O(n2)C.O(log2n)D.O(nlog2n)28.有 3 个关系 R、S 和 T 如下:(分数:1.00)A.B.C.D.29.有下列程序:#inc
12、ludestdio.hstructstint(x,y)date2=1,10,2,20;main()structst*p=date;printf(“%d,“,p-y);printf(“%d/n“,(+p)-x);程序的运行结果是( )。(分数:1.00)A.10,1B.20,1C.10,2D.20,230.下列不能正确表示代数式 2abcd 的 C 语言表达式是( )。(分数:1.00)A.2*8-*b/c/dB.a*b/c/d*2C.a/c/d*b*2D.2*a*b/c*d31.有下列程序:#includestdio.hmain()FILE*pf;char*s1=“China“,*s2=“Be
13、ijing“;pf=fopen(“abc.dat“,“wb+“);fwrite(s2,7,1,pf);rewind(pf);/*文件位置指针回到文件开头*/fwrite(s1,5,1,pf);fclose(pf);以上程序执行后 abc.dat 文件的内容是( )。(分数:1.00)A.ChinaB.ChinangC.ChinaBeijingD.BeijingChina32.有下列程序:#includestdio.hmain()int i=5;doif(i%3=1)if(i%5=2)printf(“*%d“,i);break;i+:while(i!=0);printf(“/n“);程序的运行结
14、果是( )。(分数:1.00)A.*7B.*3*5C.*5D.*2*633.下列叙述中正确的是( )。(分数:1.00)A.顺序存储结构的存储空间一定是连续的,链式存储结构的存储空间不一定是连续的B.顺序存储结构只针对线性结构,链式存储结构只针对非线性结构C.顺序存储结构能存储有序表,链式存储结构不能存储有序表D.链式存储结构比顺序存储结构节省存储空间34.有下列程序:#includestdio.hint fun(int(*s)4,int n,int k)int m,i;m=s0k;for(i=1;in;i+)if(sikm)m=sik;return m;main()int a44=1,2,3
15、,4,11,12,13,14,21,22,23,24,31,32,33,34;printf(“%d/n“,fun(a,4,0);程序的运行结果是( )。(分数:1.00)A.4B.34C.31D.3235.假定已建立以下链表结构,且指针 p 和 q 已指向如图所示的结点:(分数:1.00)A.B.C.D.36.若有定义语句:char s10=“1234567/0/0“;,则 strlen(s)的值是( )。(分数:1.00)A.7B.8C.9D.1037.C 源程序中不能表示的数制是( )。(分数:1.00)A.二进制B.八进制C.十进制D.十六进制38.有下列程序:#includestdio
16、.hmain()stuct STUchar name9;char sex;double score2;stuct STUa=“Zhao“,m,85.0,90.0,b-“Qian“,f,95.0,92.0;b=a:printf(“%s,%c,%2.0,%2.0/n“,b.name,b.sex,b.score0,bscore1);程序的运行结果是( )。(分数:1.00)A.Qian,f,95,92B.Qian,m,85,90C.Zhao,f,95,92D.Zhao,m,85,9039.有下列程序:#includestdio.hmain()char a=4;printf(“%d/n“,a=a1);
17、程序的运行结果是( )。(分数:1.00)A.40B.16C.8D.440.下列关于宏的叙述中正确的是( )。(分数:1.00)A.宏名必须用大写字母表示B.宏定义必须位于源程序中所有语句之前C.宏替换没有数据类型限制D.宏调用比函数调用耗费时间二、填空题(总题数:13,分数:60.00)41.对下列二叉树进行中序遍历的结果是_。(分数:4.00)填空项 1:_42.按照软件测试的一般步骤,集成测试应在 1 测试之后进行。(分数:4.00)填空项 1:_43.软件工作三要素包括方法、工具和过程,其中, 1 支持软件开发的各个环节以及控制和管理。(分数:4.00)填空项 1:_44.数据库设计包
18、括概念没计、 1 和物理没计。(分数:4.00)填空项 1:_45.在二维表中,元组的 1 不能再分成更小的数据项。(分数:4.00)填空项 1:_46.设变量 a 和 b 已正确定义并赋初值。请写出 a-=a+b 等价的赋值表达式 1。(分数:4.00)填空项 1:_47.若整型变量 a 和 b 中的值分别为 7 和 9,要求按以下格式输出 a 和 b 的值:a=7b=9请完成输出的语句:printf(“_“a,b);。(分数:4.00)填空项 1:_48.下列程序输出结果是_。#includestdio.hmain()int i,j,sum;for(i=3;i=1;i-)sum=0;for
19、(j=1;j=i;j+)sum+=i*j;printf(“%d/n“,sum);(分数:4.00)填空项 1:_49.下列程序输出结果是_。#includestdio.hmain()intj,a=1,3,5,7,9,11,13,15,*p=a+5;for(j=3;j=1;j-)switch(j)case1:case2:printf(“%d“,*p+);break;case2:printf(“%d“,*(-p);(分数:4.00)填空项 1:_50.下列程序的输出结果是_。#includestdio.h#define N 5jnt fun(int*s,int a,int n)int j;*s=a
20、;j=n:while(a!=sj)j-;return j;main()int sN+1;int k;for(k=1;k=N;k+)sk=k+1;printf(“%d/n“,fun(s,4,N);(分数:4.00)_51.下列程序的输出结果是_。#includestdio.hint fun(int x)static int t=0;return(t+=x);main()int s,i;for(i=1;i=5;i+)s=fun(i);printf(“%d/n“,s);(分数:4.00)填空项 1:_52.下列程序按下面指定的数据给 X 数组,并按如下形式输出,请填空。43 72 6 91 5 8
21、1 0#includestdio.hmain()int x44,n=0,i,j;for(j=0;j4;j+)for(i=3;i=j;_)(n+;xij=_;)for(i=0;i4;i+)for(j=0;j=i;j+)printf(“%3d“,xij);printf(“/n“);(分数:8.00)填空项 1:_53.下列程序的功能是通过函数 func 输入字符并统计输入字符的个数。输入时用字符作为输入结束标志,请填空。#includestdio.hlong_;/*函数说明语句*/main()long n;n=func();printf(“n=%1d/n“,n);long func()long m
22、;for(m=0;getchar()!=;_);return m;(分数:8.00)填空项 1:_二级 C 语言笔试-89 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:40.00)1.若有定义语句“int m=5,4,3,2,1,i=4;”,则下列对 m 数组元素的引用中错误的是( )。(分数:1.00)A.m-iB.m2*2C.mm0 D.mmi解析:解析 数组的下标是从零开始的。一维数组的一般定义方式为:数型说明符数组名常量表达式其中中的内容可以是整型数量,也可以是整型表达式。选项 C 中,m0=5,mm0=m5,数组下标越界。2.在软件开发中,需求
23、分析阶段可以使用的工具是( )。(分数:1.00)A.N-S 图B.DFD 图 C.PAD 图D.程序流程图解析:解析 在软件开发中,需求分析阶段常使用数据流图(DFD)、数据字典(DD)、结构化自然语言、判断表和判断树等工具。3.有下列程序:#includestdio.hvoid fun(int a,int b)int t;t=a;a=b;b=t;main()int c10=1,2,3,4,5,6,7,8,9,0,i;for(i=0;i10;i+=2)fun(ci,ci+1);for(i=0;i10;i+)printf(“%d,“,ci);printf(“/n“);程序的运行结果是( )。(
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 89 答案 解析 DOC
