【计算机类职业资格】二级C语言笔试-459及答案解析.doc
《【计算机类职业资格】二级C语言笔试-459及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-459及答案解析.doc(30页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试-459 及答案解析(总分:91.00,做题时间:90 分钟)一、选择题(总题数:40,分数:59.00)1.某二叉树有 5个度为 2的结点,则该二叉树中的叶子结点数是A) 10 B) 8 C) 6 D) 4(分数:2.00)A.B.C.D.2.有下列二叉树,对此二叉树前序遍历的结果为( )(分数: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.若有运算符:、=、%、sizeof,则它们按优先级(由高至低)的正确排列顺序为( )。A) %、sizeof、= B) sizeof、%、=、C) sizeof、%、= D) sizeof、%、=(分数:2.00)A.B.C.D.6.若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是A) 函数的实参和其对应的形参共占同一存储单元B) 形参只是形式上的存在,不占用具体存储单元C) 同名的实参和形参
3、占同一存储单元D) 函数的形参和实参分别占用不同的存储单元(分数:1.00)A.B.C.D.7.若有定义:double a=22;int i=0, k=18;,则不符合 C语言规定的赋值语句是A) a=a+, i+; B) i=(a+k)=(i+k);C) i=a%11; D) i=!a;(分数:1.00)A.B.C.D.8.下列程序的输出结果是( )。mainint x=8,y=8;printf(“%d %d/n“,x-,-y);A) 8 8 B) 7 7 C) 7 8 D) 8 7(分数:2.00)A.B.C.D.9.下列程序输出的结果是( )。main()int a;a=-4+4*5-6
4、;printf(“%d”,a);a=4+4%5-6;printf(“%d”,a);a=-3+4%6/5;printf(“%d”,a);a=(7+6)%5/2;printf(“%d”,a);A) 10 2-3 1 B) 10-2 2 1 C) 11-22 1 D) 10 2 2 1(分数:1.00)A.B.C.D.10.下列条件语句中,功能与其他语句不同的是 _。A) if (a) printf(“%d/n“,x);else printf(“%d/n“,y);B) if(a= =0) printf(“%d/n“,y);else printf(“%d/n“,x);C) if(a!=0)printf
5、(“%d/n“,x);else printf(“%d/n“,y);D) if(a= =0)printf(“%d/n“,x);else printf(“%d/n“,y);(分数:1.00)A.B.C.D.11.语句“printf(“a/bhow/are/y/bou/n“);“的输出结果是( )。A) a/bhow/are/y/bou B) a/bhow/are/y/bouC) howareyou D) ahowarey/bou(分数:1.00)A.B.C.D.12.if语句的基本形式是:if(表达式)语句,以下关于“表达式”值的叙述中正确的是_。A) 必须是逻辑值 B) 必须是整数值C) 必须是
6、正数 D) 可以是任意合法的数值(分数:1.00)A.B.C.D.13.以下不正确的叙述是( )。A) 在 C程序中,逗号运算符的优先级最低B) 在 C程序中,APH 和 aph是两个不同的变量C) 若变量 a和 b类型相同,执行了赋值表达式 a=b后 b中的值将放入 a中,而 b中的值不变D) 当从键盘输入数据时,对于整型变量只能输入整型数值,而实型变量只能输入实型数值(分数:1.00)A.B.C.D.14.sizeof(float)是( )。A) 一个双精度型表达式 B) 一个整型表达式C) 一种函数调用 D) 一个不合法的表达式(分数:1.00)A.B.C.D.15.运行下列程序时,若输
7、入的数据为“1,2,3”,则输出结果是( )。main()float a,b,c,t;scanf(“%f,%f,%f“,if(ab)t=a;a=b;b=t;if(ac)t=a;a=c;c=t;if(bc)t=b;b=c;c=t;)printf(“%f/n%f/n%f/n“,a,b,c);A) 1.00 B) 1.002.00 3.003.00 2.00C) 1 D) 3.0000003 2.0000002 1.000000(分数:1.00)A.B.C.D.16.有如下程序:#includestdio.hmain()int x=1,a=0,b=0;switch(x)casc 0:b+;case
8、1:a+;case 2:a+;b+;printf(“a=%d,b=%d/n“,a,b);该程序的输出结果是( )。A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=2(分数:1.00)A.B.C.D.17.若程序执行时的输入数据是“2473“,则下述程序的输出结果是#includestdio.hvoid main()int cs;while(cs=getchar()!=,/n)switch(cs=2)case0case 1:putchar(cs+4);case 2:putchar(cs+4);break;case 3:putchar(cs+3);default
9、:putchar(cs+2);A) 668977 B) 668966 C) 6677877 D) 6688766(分数:1.00)A.B.C.D.18.定义 int*swap()指的是_。A) 个返回整型值的函数 swap()B) 一个返回指向整型值指针的函 swap()C) 一个指向函数 swap()的指针,函数返回一个整型值D) 以上说法均错(分数:2.00)A.B.C.D.19.若有定义语句:int m=5,4,3,2,1,i=4;,则下面对 m数组元素的引用中错误的是_。A) m-i B) m2*2 C) mm0 D) mmi(分数:2.00)A.B.C.D.20.下列程序的输出结果是
10、( )。#includestdiohmain()int a=2,b=3,p;p=f(a,b);printf(“%d“,p);int f(a,b)int c;if(ab)c=1;else if(a=b)c=0;else c=-1;return(c) ;A) -1 B) 0 C) 1 D) 2(分数:1.00)A.B.C.D.21.下列程序段的运行结果是( )。#includestdio.hvoid main()char str=“ABC“,*p=str;printf(“%d/n“,*(p+3);A) 67 B) 0 C) 字符C的地址 D) 字符C(分数:2.00)A.B.C.D.22.下面程序
11、的输出是( )。main()int t=1;fun(fun(t);fun(int h)static int a3=1,2,3;int k;for(k=0;k3;k+)ak+=ak-h;for(k=0;k3;k+)printf(“%d“,ak);printf(“/n“);return(ah);A1,2,3,1,5,9,B1,3,5,1,3,5,C1,3,5,0,4,8,D1,3,5,-1,3,7,(分数:1.00)A.B.C.D.23.有以下程序:#includestdio.hvoid fun(int D)int d=2;p=d+;printf(“%d“,p);main()int a=1;fun
12、(a);printf(“%d/n“,a);程序运行后的输出结果是( )。A32 B12 C21 D22(分数:1.00)A.B.C.D.24.若有如下程序段,其中 s,a,b,c 均已定义为整型变量,且 a,c 均已赋值(c 大于 0):s=a;for(b=1;b=c;b+) s=s+1;则与上述程序段功能等价的赋值语句是( )。A) s=a+b; B) s=a+c; C) s=s+c; D) s=b+c;(分数:1.00)A.B.C.D.25.以下叙述中正确的是( )。A) 预处理命令行必须位于源文件的开头B) 在源文件的一行上可以有多条预处理命令C) 宏名必须用大写字母表示D) 宏替换不占
13、用程序的运行时间(分数:1.00)A.B.C.D.26.下面程序段的运行结果是( )。#includestdio.hvoid main()char str=“ABC“,*p=str;pfintf(“%d/n“,*(p+3);A) 67 B) 0 C) 字符C的地址 D) 字符C(分数:2.00)A.B.C.D.27.下列二维数组初始化语句中,不正确的是( )。A) int b2=1,2,3,4,5,6,7; B) int b35=0,0,0;C) intb4=1,2,3,4,5,6; D) int b32=(1,2) ,(3,4) ,(5,6) ;(分数:1.00)A.B.C.D.28.下列程
14、序的运行结果是( )。#includestdio.h#includestring.hmain()char*s1=“ahDuj“;char*s2=“ABdUG“:int t;t=strcmp(s1,s2);printf(“%d“, t);A) 正数 B) 负数 C) 零 D) 不确定的值(分数:2.00)A.B.C.D.29.设有定义:char p=1,2,3,*q=p;,以下不能计算出一个 char型数据所占字节数的表达是_。(A) sizeof(p)(B) sizeof(char)(C) sizeof(*q)(D) sizeof(p0)(分数:2.00)A.B.C.D.30.下面函数的功能是
15、( )。 sss(s,t) char*s,*t; while(*s) strcpy(p+strlen(q),q);printf(“%d /n“,sizeof(p);程序运行后的输出结果是_。(A) 9(B) 6(C) 11(D) 7(分数:2.00)A.B.C.D.32.下列程序的执行结果是_。#lnCludestdio.hunion unint i;char c2;void main()union un x;x.c0=10x.cl=1;printf(“/n%d,x.i);A) 266 B) 11 C) 265 D) 138(分数:2.00)A.B.C.D.33.程序中若有如下说明和定义语句c
16、har fun(char *);main()char *s=“one“,a5=0,(*f1)()=fun,ch;以下选项中对函数 fun的正确调用语句是_。(A) (*f1);(B) *f1(*s);(C) fun(a);(D) ch=*f1(s);(分数:2.00)A.B.C.D.34.在 C语言中,变量的隐含存储类别是( )。A) auto B) staticC) extern D) 无存储类别(分数:2.00)A.B.C.D.35.有以下函数:char fun(char *P)return p;该函数的返回值是( )。A) 无确切的值 B) 形参 p中存放的地址值C) 一个临时存储单元的
17、地址 D) 形参 p自身的地址值(分数:1.00)A.B.C.D.36.下列描述中正确的是( )。A)在 C语言程序中预处理是指完成宏替换和文件包含指定的文件的调用B)预处理指令只能位于 C源程序文件的首部C)预处理命令可以放在程序中的任何位置D)预处理命令结尾需要加分号(分数:1.00)A.B.C.D.37.以下叙述中正确的是_。A) C语言比其他语言高级B) C语言可以不用编译就能被计算机识别执行C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D) C语言出现的最晚,具有其他语言的切优点(分数:2.00)A.B.C.D.38.若变量已正确定义,则以下语句的输出结果是_。s=
18、32; s=32; printf(“%d“,s);(A) -1(B) 0(C) 1(D) 32(分数:2.00)A.B.C.D.39.有以下程序#includestdiohmain()int a=2,b=2,c=2;printf(“%d/n“,a/bj=i; k=+i;p=f(j,k);printf(“%d“,p);int f(int a,int b)int c;if(ab)c=1;else if(a= =b) c=0;else c=-1;return(c);A) -1 B) 1 C) 2 D) 编译出错,无法运行(分数:2.00)A.B.C.D.二、填空题(总题数:15,分数:32.00)4
19、1.测试的目的是暴露错误,评价程序的可靠性;而U /U的目的是发现错误的位置并改正错误。(分数:2.00)填空项 1:_42.问题处理方案的正确而完整的描述称为U /U。(分数:2.00)填空项 1:_43.结构化程序设计的 3种基本结构分别是顺序、选择和 1。(分数:2.00)44.数据结构分为逻辑结构与存储结构,线性链表属于 1。(分数:2.00)填空项 1:_45.两种基本测试方法中, 1 测试的原因之一是保证所测试模块中每一个独立路径至少要执行一次。(分数:2.00)填空项 1:_46.软件工程研究的内容主要包括: 1 技术和软件工程管理。(分数:2.00)填空项 1:_47.诊断和改
20、正程序中错误的工作通常称为U /U。(分数:2.00)填空项 1:_48.若有定义:int a=10,b=9,c=8;接着顺序执行下列语句后,变量 b中的值是_。c=(a-=(b-5);c=(a%11)+(b=3);(分数:4.00)填空项 1:_49.设 y为 int型变量,请写出描述“y 是偶数”的表达式 1。(分数:2.00)填空项 1:_50.若 a是 int型变量,且 a的初值为 4,则计算 a+=a-=a*a表达式后 a的值为 1。(分数:2.00)填空项 1:_51.以下程序的功能是:输出 100以内(不含 100)能被 3整除且个位数为 6的所有整数,请填空。main()(in
21、t i,j;for(i=0;ii0;i+)j=i*10+6;if(_)continue;printf(“%d“,j);(分数:2.00)填空项 1:_52./13在内存中占 1个字节,“/12“在内存中占 1 个字节。(分数:2.00)填空项 1:_53.函数 main()的功能是:在带头结点的单链表中查找数据域中值最小的结点。请填空。#includestdio.hstruct nodeint data;struct node * next;int main(struct node * first)/*指针 first为链表头指针*/struct node * p;int m;p=first-
22、next;m=p-data;p=p-next;for(; p!=NULL;p=_)if(p-datam)m=p-data;return m;(分数:2.00)填空项 1:_54.设有下列程序:#includestdio.h#includestring.hmain()int i;char s10,t10;gets(t);for(i=0;i2;i+)gets(s);if(strcmp(t,s)0) strcpy(t,s);printf(“%s/n“,t);程序运行后,从键盘上输入(CR代表回车符):CDEFCRBADEFCRQTHRGCR,则程序的输出结果是_。(分数:2.00)填空项 1:_55
23、.下列程序中的数组 a包括 10个整数元素,分别将前项和后项之和存入数组 b,并按每行 4个元素输出数组 b。请填空。#includestdio.hmain()int a10,b10,i;for(i=0;i10;i+)scanf(“%d“,for(i=0;i9;i+)_;for(i=0;i9;i+)if(i%4=0)printf(“/n“);printf(“%3d“,bi);(分数:2.00)填空项 1:_二级 C语言笔试-459 答案解析(总分:91.00,做题时间:90 分钟)一、选择题(总题数:40,分数:59.00)1.某二叉树有 5个度为 2的结点,则该二叉树中的叶子结点数是A) 1
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 459 答案 解析 DOC
