【计算机类职业资格】二级C语言笔试-464及答案解析.doc
《【计算机类职业资格】二级C语言笔试-464及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-464及答案解析.doc(29页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试-464 及答案解析(总分:102.00,做题时间:90 分钟)一、选择题(总题数:40,分数:66.00)1.对长度为 n 的线性表进行顺序查找,在最坏的情况下所需要的比较次数为 _。A) log2n B) n/2 C) n D) n+l(分数:2.00)A.B.C.D.2.数据的存储结构是指( )A) 数据所占的存储空间B) 数据的逻辑结构在计算机中的存放形式C) 数据在计算机中的顺序存储方式D) 存储在计算机外存中的数据(分数:2.00)A.B.C.D.3.结构化程序设计主要强调的是A) 程序的规模 B) 程序的效率 C) 程序设计语言的先进性 D) 程序易读性(分数:
2、2.00)A.B.C.D.4.按照“先进后出”原则组织数据的数据结构是( )。A) 队列 B) 栈 C) 双向链表 D) 二叉树(分数:2.00)A.B.C.D.5.某二叉树有 5 个度为 2 的结点,则该二叉树中的叶子结点数是_。A) 10 B) 8 C) 6 D) 4(分数:2.00)A.B.C.D.6.单个用户使用的数据视图的描述称为A) 外模式 B) 概念模式 C) 内模式 D) 存储模式(分数:2.00)A.B.C.D.7.结构化程序设计的 3 种结构是( )。 A) 顺序结构,分支结构,跳转结构 B) 顺序结构,选择结构,循环结构 C) 分支结构,选择结构,循环结构 D) 分支结构
3、,跳转结构,循环结构(分数:2.00)A.B.C.D.8.有下列二叉树,对此二叉树中序遍历的结果为( )。(分数:2.00)A.B.C.D.9.下列关于栈的叙述正确的是_。(A) 栈按“先进先出“组织数据(B) 栈按“先进后出“组织数据(C) 只能在栈底插入数据(D) 不能删除数据(分数:2.00)A.B.C.D.10.数据流图用于抽象地描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是( )。A) 控制流 B) 加工 C) 数据存储 D) 源和潭(分数:1.00)A.B.C.D.11.有下列二叉树,对此二叉树前序遍历的结果为( )。(分数:2
4、.00)A.B.C.D.12.将 E-R 图转换为关系模式时,实体和联系都可以表示为( )。A属性 B键C关系 D域(分数:1.00)A.B.C.D.13.在结构化方法中,用数据流图(DFD)作为描述工具的软件开发阶段是( )。A) 可行性分析 B) 需求分析 C) 详细设计 D) 程序编码(分数:1.00)A.B.C.D.14.下列工具中为需求分析常用工具的是( )。A) PAD B) PFD C) N-S D) DFD(分数:2.00)A.B.C.D.15.算法中,对需要执行的每一步操作,必须给出清楚、严格的规定这属于算法的_。A) 正当性 B) 可行性 C) 确定性 D) 有穷性(分数:
5、2.00)A.B.C.D.16.设变量已正确定义并赋值,以下正确的表达式是_。A) x=y*5=x+z B) int(15.8%5)C) x=y+z+5,+y D) x=25%5.0(分数:1.00)A.B.C.D.17.有以下程序:main()int a=5,b=4,c=3,d=2;if(abc)printf(“%d/n“,d);else if(c-1=d)=1)printf(“%d/n“,d+1);elseprintf(“%d/n“,d+2);执行后输出结果是 _。A) 2 B) 3 C) 4 D) 编译时有错,无结果(分数:1.00)A.B.C.D.18.已知:i nf t=0:whil
6、e(t=1) 则下列叙述中正确的是A) 循环控制表达式的值为 0 B) 循环控制表达式的值为 1C) 循环控制表达式不合法 D) 以上说法都不对(分数:1.00)A.B.C.D.19.若运行以下程序时,从键盘输入 ADescriptorCR(CR表示回车),则其运行结果是#includestdio.hmain( )char c;int v0=1,v1=0,v2=0;do switch(c=getchar( )casea:caseA:casee:caseE:casei:caseI:caseo:caseO:caseu:caseU:v1+=1; default:v0+=1;v2+=1;while(c
7、!=/n);printf(“v0=%d,v1=%d,v2=%d/n“,v0,v1,v2);A) v0=7,v1=4,v2=7 B) v0=8,v1=4,v2=8C) v0=11,v1=4,v2=11 D) v0=13,v1=4,v2=12(分数:1.00)A.B.C.D.20.下列选项中合法的赋值语句是( )。A) a=b=34 B) a=34,b=34C) i-1; D) m=(int)(x+y);(分数:2.00)A.B.C.D.21.有如下嵌套的 if 语句if(ab)if(ac) k=a;else k=c;elseif(bc) k=b;else k=c;以下选项中与上述订语句等价的语句
8、是A) k=(ab)? a:b;k=(bc)?b:c;B) k=(ab)?(bc)?a:b):(bc)?b:c);C) k=(ab)?(ac)?a:c):(bc)?b:c);D) k=(ab)?a:b;k=(ac)?a:c;(分数:1.00)A.B.C.D.22.下列程序的输出结果是( )。main()int i=1,j=2,k=3;if(i+=1p=(char *)malloc(sizeof(char)* 20);q=p;scanf(“%s %s“,p,q);printf(“%s %s/n“,p,q);若从键盘输入;abc def回车,则输出结果是 _。A) def def B) abc d
9、ef C) abe d D) d d(分数:2.00)A.B.C.D.29.有以下程序:void swapl(int c0,int c1)int t;t=c00;c00=c10;c10=t;void swap2(int*c0,int*c1)int t;t=*c0;*c0=*c1;*c1=t;main()int a2=3,5),b2=3,5;swapl(a,a+1);swap2(b0,b1);printf(“%d%d%d%d/n“,a0,a1,b0,b1);程序运行后的输出结果是_。A) 3 5 5 3 B) 5 3 3 5 C) 3 5 3 5 D) 5 3 5 3(分数:2.00)A.B.C
10、.D.30.设 q1 和 q2 是指向一个 float 型一维数组的指针变量,k 为 float 型变量,则不能正确执行的语句是( )。A) k=*q1+*q2; B) q1=k; C) q1=q2; D) k=*q1*(*q2);(分数:2.00)A.B.C.D.31.下面程序段的输出结果是( )。char str=“ABC“,*p=str;Printf(“%d/n“,*(p+3);A) 67 B) 0 C) 字符C的地址 D) 字符C(分数:1.00)A.B.C.D.32.在 C 语言中,函数返回值的类型最终取决于( )。A) 函数定义时在函数首部所说明的函数类型B) return 语句中
11、表达式值的类型C) 调用函数时主调函数所传递的实参类型D) 函数定义时形参的类型(分数:2.00)A.B.C.D.33.表达式 3.6-5/2+1.2+5%2 的值是( )。A) 4.3 B) 4.8 C) 3.3 D) 3.8(分数:1.00)A.B.C.D.34.以下错误的定义语句是_。A) int x3=0,1,1,2,3;B) int x43=1,2,3,1,2,3),1,2,3,1,2,3;C) int x4=1,2,3,1,2,3,1,2,3,1,2,3;D) int x3=1,2,3,4;(分数:2.00)A.B.C.D.35.下面程序段中,输出*的个数是char *s=“/ta
12、/018bc“;for(;*s!=/0;s+)printf(“*“);A) 9 B) 5 C) 6 D) 7(分数:2.00)A.B.C.D.36.以下程序运行后的输出结果是 #includestdio.h int fun() static int x=1; x+=1; return x; main() int i,s=1; for(i=1; i=5;i+) s+=fun(); printf(“%d/n“, s); A) 11 B) 21 C) 6 D) 120(分数:2.00)A.B.C.D.37.变量 a 中的数据用二进制表示的形式是 01011101,变量 b 中的数据用二进制表示的形式
13、是 11110000。若要求将 a 的高 4 位取反,低 4 位不变,所要执行的运算是( )。Aab Ba|b Cay=3*x-4;return y;A) int B) 不确定 C) void D) float(分数:2.00)A.B.C.D.39.有以下程序:#include stdio.h#include string.hmain(int argc,char *argv)int i,len=0;for(i=1;iargc;i+=2)len+=strlen(argvi);prinff(“%d/n“,len);此程序经编译链接后生成的可执行文件是 ex.exe,若运行时输入以下带参数的命令行:
14、ex abed efg h3 k44则执行后的输出结果时( )。A) 14 B) 12 C) 8 D) 6(分数:2.00)A.B.C.D.40.有以下程序#includestdio.h#includestring.htypedef structchar name9;char sex;float score2;)STU;STU f(STU a)STU b=“Zhao“,in,85.0,90.0);int i;strcpy(a.name,b.name);a.sex=b.sex;for(i=0;i2;i+) a.scorei=b.scorei;return a;main()STU c=“Qian“
15、,f,95.0,92.0,d;d=f(c);printf(“%s,%c,%2.0f,%2.0f“,d.name,d.sex,d.score0,d.score1);程序的运行结果是( )。Aqian,f,95,92 Bqian,m,85,90CZhaO,m,85,90 DZhao,f,95,92(分数:1.00)A.B.C.D.二、填空题(总题数:15,分数:36.00)41.某二叉树有 5 个度为 2 的结点以及 3 个度为 1 的结点,则该二叉树中共有 1 个结点。(分数:2.00)填空项 1:_42.数据的独立性分为逻辑独立性与物理独立性。当数据的存储结构改变时,其逻辑结构可以不变,因此,
16、基于逻辑结构的应用程序不必修改,这称为 1。(分数:2.00)填空项 1:_43.数据结构包括数据的逻辑结构、数据的U /U以及列数据的操作运算。(分数:2.00)填空项 1:_44.深度为 5 的满二叉树有 1 个叶子结点。(分数:2.00)填空项 1:_45.某二叉树中度为 2 的结点有 18 个,则该二叉树中有 1 个叶子结点。(分数:4.00)填空项 1:_46.数据库系统的三级模式分别为U /U模式、内部级模式与外部级模式。(分数:2.00)填空项 1:_47.若有定义:int a=10,b=8,c=4;然后顺序执行下列语句后,变量 a 中的值是_。 c=(b-=(a-4);a=(c
17、%2)+(b-1);(分数:2.00)填空项 1:_48.以下程序的功能是:将输入的正整数按逆序输出。例如:若输入 135,则输出 531,请填空。#includestdio.hmain()int n,s;printf(“Enter a number:“);scanf(“%d“,n);printf(“Output:“);dos=n%10;printf(“%d“,s);_;while(n!=0);printf(“/n“);(分数:2.00)填空项 1:_49.下列程序运行后的输出结果是_。#includestdio.hmain()int k=1,s=0;doif(k%2)!=0)continue
18、;s+=k;k+;whiIe(k10);printf(“s=%d/n“,s);(分数:4.00)填空项 1:_50.下面程序的输出是U /Umain()enum ememl=3,em2=1,em3;char*aa=“AA,“BB“,“CC“,“DD“printf(“%s%s%/n“,aaem1,aaem2,aaem3);(分数:2.00)填空项 1:_51.以下程序的运行结果是_。int k=0;void fun(int m)m+=k;k+=m;printf(“m=%d/nk=%d“,m,k+);main()int i=4;fun(i+);printf(“i: %d k=%d/n“,i,k);
19、(分数:2.00)填空项 1:_下面函数的功能是:找出一维数组元素中的最大值和它所在的下标,并将最大值和其下标通过形参传回。请填空。#includestdio.hvoid fun(int a,int n,int *max,int *d)int i;*max=a0; *d=0;for(i=0;U /U;i+)if(*maxU /U) *max=ai;*d=i;main( )int i,x E20,max,index,n=10;fox(i=0;in;i+)scanf(“%d“,xi);printf(“%4d“,xi);printf(“/n“);fun(x,n,U /U;i+)j=i*10+6;if
20、(U /U)continue:Printf(“%d”“,j);(分数:2.00)填空项 1:_53.设有定义:FILE *fw;,请将以下打开文件的语句补充完整,以便可以向文本文件 read me.txt 的最后续写内容。fw=fopen(“readme.txt“, “_“)(分数:2.00)填空项 1:_54.以下程序通过函数*。这里 f(x)=x2+1,由 F 函数实现。请填空。main()printf(“The sum=%d/n“, SunFun(10); SunFun(int n)int x, s=0 ;for (x=0; x=n ; x+ ) s+=F(U /U) ;return s
21、;F(int x)return (U /U);(分数:2.00)填空项 1:_二级 C 语言笔试-464 答案解析(总分:102.00,做题时间:90 分钟)一、选择题(总题数:40,分数:66.00)1.对长度为 n 的线性表进行顺序查找,在最坏的情况下所需要的比较次数为 _。A) log2n B) n/2 C) n D) n+l(分数:2.00)A.B.C. D.解析:解析 顺序查找的最坏情况是所找的元素在线性表的最后,因此查找的比较次数是线性表的长度,即 n。2.数据的存储结构是指( )A) 数据所占的存储空间B) 数据的逻辑结构在计算机中的存放形式C) 数据在计算机中的顺序存储方式D)
22、 存储在计算机外存中的数据(分数:2.00)A.B. C.D.解析:解析 数据的存储结构,又称为数据的物理结构,是数据的逻辑结构在计算机中的存放形式。数据的存储结构有顺序结构、链式结构、散列结构和索引结构等。3.结构化程序设计主要强调的是A) 程序的规模 B) 程序的效率 C) 程序设计语言的先进性 D) 程序易读性(分数:2.00)A.B.C.D. 解析:解析 结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、模块化及限制使用 goto语句,总的来说可使程序结构良好、易读、易理解、易维护。4.按照“先进后出”原则组织数据的数据结构是( )。A) 队列 B) 栈 C) 双向链表 D)
23、二叉树(分数:2.00)A.B. C.D.解析:解析 栈是一种特殊的线性表,其插入和删除运算都只在线性表的一端进行,而另一端是封闭的。进行插入、删除的一端称为栈顶,封闭的一端称为栈底。栈顶元素是最后被插入的元素,不是最后被删除的,是按先进后出的原则组织数据的。5.某二叉树有 5 个度为 2 的结点,则该二叉树中的叶子结点数是_。A) 10 B) 8 C) 6 D) 4(分数:2.00)A.B.C. D.解析:知识点 二叉树的基本性质评析 在任意一棵二叉树中,度为 0 的结点(即子叶结点)总比度为 2 的结点多一个。本题中度为 2 的结点数为 5,故叶子结点数为 5+16 个。6.单个用户使用的
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 464 答案 解析 DOC
