【计算机类职业资格】二级C语言笔试-69及答案解析.doc
《【计算机类职业资格】二级C语言笔试-69及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-69及答案解析.doc(25页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试-69 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:70.00)1.下列选项中非法的字符常量是( )。(分数:2.00)A./tB./039C.,D./n2.有下列程序:main()int x0;inty0;while(x7printf(:%d,%d“,y,x);程序的输出结果是( )。(分数:2.00)A.0,7B.7,7C.0,6D.1,63.有下列程序:main()char s“abcde“;s+2;printf(“%d/n“,s0;执行后的结果是( )。(分数:2.00)A.输出字符 a 的 ASCII 码B.输出字符 c 的
2、 ASCII 码C.输出字符 cD.程序出错4.需求分析阶段的任务是( )。(分数:2.00)A.软件开发方法B.软件开发工具C.软件开发费用D.软件系统功能5.假定所有变量均已正确说明,下列程序段运行后 x 的值是( )。ab+c0;x12;if(!(分数:2.00)A.x-;elsex5;if(C) x3;elsex4;A) 11B.4C.12D.36.若有下列说明和语句,已知 int 型数据占 2 个字节,则下列语句的输出结果是( )。stmct stchar a15;intb;double c;printf(“%d“,sizeof(structSt);(分数:2.00)A.15B.8C
3、.25D.27.按照“先进后出”原则组织数据的数据结构是( )。(分数:2.00)A.队列B.栈C.双向链表D.二叉树8.结构化程序设计的核心和基础是( )。(分数:2.00)A.结构化分析方法B.结构化设计方法C.结构化设计理论D.结构化编程方法9.下列程序的运行结果是( )。main()int a2,b3,c4;if(ab) if00)c0;elsec+1;printf(“%dh”,c);(分数:2.00)A.2B.3C.5D.410.定义结构体数组:struct stuint num;charname20;x51,“LI“,2,“ZHAO“,3,“WANG“,4,“ZHANG“,5,“L
4、IU“;for(i1;i5;i+)printf(“%d%C“,xinum,xiname2);以上程序段的输出结果为( )。(分数:2.00)A.2A3N4A5UB.112A3H41C.1A2N3A4UD.2H3A4H5111.有下列二叉树,对此二叉树前序遍历的结果为( )。(分数:1.00)A.B.C.D.12.设变量 a、b、c、d 和 y 都己正确定义并赋值。若有下列 if 语句if(ab) if(c d) y0; else y1;该语句所表示的含义是( )。(分数:1.00)A.B.C.D.13.下列不正确的转义字符是( )。(分数:1.00)A./B./tC./nD.08814.#de
5、fine 能作简单的替代,用宏来替代计算多项式 5*x*x+5*+5 的值的函数 f,正确的宏定义语句为( )。(分数:1.00)A.#definef(x)5*x*x+5*+5B.#definef5*x*x+5*x+5C.#definef(a) (5*a*a+5*a+5)D.#define5*x*x+5*+5f(x)15.设 R 是一个二元关系,S 是一个三元关系,则下列运算中正确的是( )。(分数:1.00)A.R-SB.RSC.RNSD.RUS16.C 语言规定,调用一个函数时,实参变量和形参变量之间的数据传递是( )。(分数:1.00)A.地址传递B.值传递C.由实参传给形参,并由形参传
6、回给实参D.由用户指定传递方式17.若整型变量 a、b、c、d 中的值依次为:1、4、3、2。则条件表达式 ab?a:cd?c:d 的值是( )。(分数:1.00)A.1B.2C.3D.418.线性表常采用的两种存储结构是( )。(分数:1.00)A.顺序存储结构和链式存储结构B.散列方法和索引方式C.链表存储结构和数组D.线性存储结构和非线性存储结构19.结构化程序设计主要强调的是( )。(分数:1.00)A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序的易读性20.若有说明:int*p1,*p2,n8,m;下列均是正确赋值语句的选项是( )。(分数:1.00)A.p1p2B.p
7、1n;C.p1*p2p1;D.p1p2p1;21.下列叙述中正确的是( )。(分数:2.00)A.break 语句只能用于 switch 语句B.在 switch 语句中必须使用 defaultC.break 语句必须与 switch 语句中的 case 配对使用D.在 switch 语句中,不一定使用 break 语句22.树是结点的集合,它的根结点的数目是( )。(分数:2.00)A.有且只有 1 个B.1 或多于 1C.0 或 1D.至少有 2 个23.能正确表示“当 x 的取值在1,10和100,110范围内为真,否则为假”的表达式是 ( )(分数:2.00)A.(x1)B.q1k;C
8、.q1q2;D.k*q1*(*q2);29.C 语言的基本单位是( )。(分数:2.00)A.函数B.过程C.子程序D.子函数30.在面向对象的方法中, ( )描述的是具有相似属性与操作的一组对象。(分数:2.00)A.属性B.事件C.方法D.类31.函数调用 strcat(strcpy(str1,str2),str3)的功能是( )。(分数:2.00)A.将字符串 str1 复制到字符串 str2 中后再连接到字符串 str3 之后B.将字符串 str1 连接到字符串 str2 之后再复制到字符串 str3 之后C.将字符串 str2 复制到字符串 str1 后再将字符串 str3 连接到字
9、符串 str1 之后D.将字符串 str2 连接到字符串 str1 之后再将字符串 str1 复制到字符串 str3 中32.若有定义“double a;”,则正确的输入语句是( )。(分数:2.00)A.scanf(“%1f,A) ;B.C.D.33.下列程序的输出结果是( )。#includestdio.hf(int(分数:2.00)A.intb0;staticint c4;ac+;b+;retum(A) ;main()int a2,i,c;brB.7C.6D.534.下列选项中合法的赋值语句是( )。(分数:2.00)A.a-b34B.a34,b34C.i-1;D.m(int)(x+y)
10、;35.若希望下列的程序运行后输出 25,程序空白处的正确选项是( )。main()int i,j50,a7,4,10,5,8;for( )j+ai;primf(“%d,j-40);(分数:2.00)A.i1;i4;+iB.i1;i3;+iC.i4;i2;i-D.i2;i4;+i36.函数 Rell(fp)的作用是( )。(分数:2.00)A.得到 fp 所指向文件的当前读写位置B.初始化流式文件的位置指针C.移动流式文件的位置指针D.以上 3 种答案均正确37.下列程序的输出结果是( )。mainint x8,y8;printf(“%d%d/n“,x-,-y);(分数:2.00)A.88B.
11、77C.78D.8738.下列叙述中,错误的是( )。(分数:2.00)A.在同一 C 程序文件中,不同函数中可以使用名字相同的变量B.在 main()函数体内定义的变量是全局变量C.形参是局部变量,函数调用完成即失去意义D.若同一文件中全局和局部变量同名,则全局变量在局部变量作用范围内不起作用39.已知一个有序线性表为(13,18,24,35,47,50,62,83,90,115,134),当用二分法查找值为 90 的元素时,查找成功的比较次数为( )。(分数:2.00)A.1B.2C.3D.940.若有说明 inta31,2,3,4,5,6,7,8,9,则 a 数组第一维的大小是( )。(
12、分数:2.00)A.2B.3C.4D.无确定值二、填空题(总题数:15,分数:30.00)41.在结构化设计方法中,数据流图表达了问题中的数据流与加工间的关系,并且每一个 1 实际上对应一个处理模块。(分数:2.00)填空项 1:_42.结构化程序设计的 3 种基本结构分别是顺序、选择和 1。(分数:2.00)填空项 1:_43.二分法查找仅限于这样的表:表中的数据元素必须有序,其存储结构必须是(分数:2.00)填空项 1:_44.一个模块直接调用的其他模块的模块个数称为 1。(分数:2.00)填空项 1:_45.数据库系统中实现各种数据管理功能的核心软件是 1。(分数:2.00)填空项 1:
13、_46.C 语言中用 1 表示逻辑值为“真”,用数字“0”表示逻辑值为“假”。(分数:2.00)填空项 1:_47.语句:x+;+x;x1/x;执行后都使变量 x 中的值增 1,请写出一条同一功能的赋值语句 1。(分数:2.00)填空项 1:_48.下列程序的输出结果是_。main()int a+,b2,C3,t0;ifaB) ta;ab;bt;ifaC) ta;ac;ct;printf(“%d,%d,%dln“,a,b,C) ;(分数:2.00)填空项 1:_49.在 C 语言中,while 和 dowhile 循环的主要区别是 1 的循环至少被执行一次。(分数:2.00)填空项 1:_50
14、.下列程序的输出结果是_。#includestdio.hmain()int x10,y10,i;for(i0;x8;y+i)printf(“%d%d“,x-,y);(分数:2.00)填空项 1:_51.若有定义 doublea5;,则 a 数组元素下标的上限为 1。(分数:2.00)填空项 1:_52.执行下列语句段后,x 的值是_。int*p,x;x100;px*p+50;(分数:2.00)填空项 1:_53.设有下列宏定义:#define A2#define B(A+3)则执行赋值语句“kb*20;“ (k 为 int 型变量)后,k 的值是_。(分数:2.00)填空项 1:_54.有下列
15、程序:#includestdio.hmain()char c;while(cgetchar()!,)putchar(+C) ;程序运行时,如果从键盘输入:A,B,CR,则输出结果为_。(分数:2.00)填空项 1:_55.下列程序执行输出的结果是_。#includestdio.hf(int A) intb0;staticc7;ac+;b+;return(a) ;main()int a2,i,k;for(i0;i2;i+)kf(a+);printf(“%dh“,k);(分数:2.00)填空项 1:_二级 C 语言笔试-69 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:
16、40,分数:70.00)1.下列选项中非法的字符常量是( )。(分数:2.00)A./tB./039 C.,D./n解析:解析 选项 A) 中,/t表示的是横向跳若干格;选项 B) 中,/039错误,/039是八进制形式表示的字符,但其中出现了9,所以错误:选项 C) 中,是字符逗号;选项 D) 中,/n表示的是回车换行。2.有下列程序:main()int x0;inty0;while(x7printf(:%d,%d“,y,x);程序的输出结果是( )。(分数:2.00)A.0,7 B.7,7C.0,6D.1,6解析:解析 本题考查 while 循环。y 的值在 while 循环的控制表达式中
17、加 1,在循环体内减 1,所以总的 y 值不变,且控制条件+y 永远非零。当 x 加到 7 时不满足循环条件,结束循环。3.有下列程序:main()char s“abcde“;s+2;printf(“%d/n“,s0;执行后的结果是( )。(分数:2.00)A.输出字符 a 的 ASCII 码B.输出字符 c 的 ASCII 码C.输出字符 cD.程序出错 解析:解析 因为字符数组 s1)中的数组名 s 表示的是一个地址常量。所以语句“s+2;”不能将指针在当前位置的基础上再向后移动两位,因而程序编译时出错。4.需求分析阶段的任务是( )。(分数:2.00)A.软件开发方法B.软件开发工具C.
18、软件开发费用D.软件系统功能 解析:解析 需求分析是软件定义时期的最后一个阶段,它的基本任务就是详细调查现实世界要处理的对象,充分了解原系统的工作概况,明确用户的各种需求,然后在这些基础上确定新系统的功能。5.假定所有变量均已正确说明,下列程序段运行后 x 的值是( )。ab+c0;x12;if(!(分数:2.00)A.x-;elsex5;if(C) x3;elsex4;A) 11B.4 C.12D.3解析:解析 本题考查 if else 语句。第一个 if 语句,先判断条件,发现 aO,则!a 成立,执行下列的语句, x-,得 x11;第二个 if 语句,判断条件,发现 c0,则条件不成立,
19、执行下列的 else 语句,得 x4。6.若有下列说明和语句,已知 int 型数据占 2 个字节,则下列语句的输出结果是( )。stmct stchar a15;intb;double c;printf(“%d“,sizeof(structSt);(分数:2.00)A.15B.8C.25 D.2解析:解析 本题主要考查结构体的内存使用:对结构体而言,结构中不同的成员分别使用不同的内存空间,一个结构所占内存空间的大小是结构中每个成员所占内存空间大小的总和,结构中每个成员相互独立。题中 int b 占 2 个字节,chara15占 15 个字节,double c 占 8 个字节,所以共 25 个字
20、节。7.按照“先进后出”原则组织数据的数据结构是( )。(分数:2.00)A.队列B.栈 C.双向链表D.二叉树解析:解析 栈是一种特殊的线性表,其插入和删除运算都只在线性表的一端进行,而另一端是封闭的。进行插入、删除的一端称为栈顶,封闭的一端称为栈底。栈顶元素是最后被插入的元素,也是最先被删除的,是按先进后出的原则组织数据的。8.结构化程序设计的核心和基础是( )。(分数:2.00)A.结构化分析方法B.结构化设计方法C.结构化设计理论 D.结构化编程方法解析:解析 结构化程序设计的核心和基础是结构化设计理论,其中包括:结构化分析方法、结构化设计方法和结构化编程方法。9.下列程序的运行结果是
21、( )。main()int a2,b3,c4;if(ab) if00)c0;elsec+1;printf(“%dh”,c);(分数:2.00)A.2B.3C.5 D.4解析:解析 本题考查 if else 语句。第一个 if 语句,先判断条件,发现 ab 条件成立,执行下列的语句;第二个 if 语句,先判断条件,发现 bO 条件不成立,则执行与其配对的 else 语句,c+1,得c5。10.定义结构体数组:struct stuint num;charname20;x51,“LI“,2,“ZHAO“,3,“WANG“,4,“ZHANG“,5,“LIU“;for(i1;i5;i+)printf(“
22、%d%C“,xinum,xiname2);以上程序段的输出结果为( )。(分数:2.00)A.2A3N4A5U B.112A3H41C.1A2N3A4UD.2H3A4H51解析:解析 本题主要考查结构体数组的使用。xi.num 为结构体 xi中的 num 成员,xi.name2是结构体 xi中 name 成员的第 3 个元素。程序执行循环过程时:第 1 次循环,i1,输出 x1.num,x1.name2的值,即 2A:第 2 次循环,i2,输出 x2.num,x2.name2的值,即 3N;第 3 次循环,i3,输出 x3.num,x3.name2的值,即 4A:第 4 次循环,i4,输出 x
23、4.num,x4.name2的值,即 5U。11.有下列二叉树,对此二叉树前序遍历的结果为( )。(分数:1.00)A.B.C.D. 解析:解析 对二叉树的前序遍历是指先访问根结点,然后访问左子树,最后访问右子树,并且,在访问左、右子树时,先访问根结点,再依次访问其左、右子树。记住 3 种遍历的顺序:前序,访问根按前序遍历左子树按前序遍历右子树;中序,按中序遍历左子树访问根按中序遍历右子树;后序,按后序遍历左子树按后序遍历右子树访问根。12.设变量 a、b、c、d 和 y 都己正确定义并赋值。若有下列 if 语句if(ab) if(c d) y0; else y1;该语句所表示的含义是( )。
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 69 答案 解析 DOC
