【计算机类职业资格】二级C语言笔试-342及答案解析.doc
《【计算机类职业资格】二级C语言笔试-342及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-342及答案解析.doc(36页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试-342 及答案解析(总分:110.00,做题时间:90 分钟)一、选择题(总题数:50,分数:66.00)1.若变量已正确说明为 float 型,要通过 scanf(“%f%f%f“,switch(a%2) case 0:m+;break;case 1:m+;switch(b%2) defaut:m+;case0:m+;break;printf(“%d/n“,m);程序运行后的输出结果是( )。A) 1 B) 2 C) 3 D) 4(分数:2.00)A.B.C.D.3.有以下程序段typedef struct node(int data; struct node *next
2、;) *NODE;NODE p;以下叙述中正确的是_。(A) P 是指向 struct node 结构变量的指针的指针(B) NODE p;语句出错(C) P 是指向 struct node 结构变量的指针(D) P 是 struct node 结构变量(分数:2.00)A.B.C.D.4.有定义语句doubld a,b;int w;long c;若各变量已正确赋值,则下列选项中正确的表达式是( )。A) a=a+b=b+ B) w%(int) a+b)C) (c+w)%(int)a D) w=a=b;(分数:1.00)A.B.C.D.5.有定义语句:int x, y; 。若要通过 scanf
3、(“%d, %d“, x, y); 语句使变量 x 得到数值 11,变量 y得到数值 12,下面四组输入形式中,错误的是( )。A) 11 12 B) 11, 12 C) 11, 12, D) 11,12(分数:1.00)A.B.C.D.6.若有以下定义:struct linkint data;struct link * next;a,b,c,*p,*q;且变量 a 和 b 之间已有如下图所示的链表结构:(分数:1.00)A.B.C.D.7.有如下程序:#define n 2#define m N+1#define NUM 2*m+1main()int i;for(i=1;i=NUM;i+)p
4、rintf(“%d/n“,i);该程序中的 for 循环执行的次数是_。A) 5 B) 6 C) 7 D) 8(分数:1.00)A.B.C.D.8.以下叙述中不正确的是( )。 A) 预处理命令行都必须以#号开始,结尾不加分号 B) 在程序中凡是以#号开始的语句行都是预处理命令行 C) C 程序在执行过程中对预处理命令进行处理 D) 预处理命令可以放在程序中的任何位置(分数:2.00)A.B.C.D.9.使用白盒测试法时,确定测试数据应该根据( )和指定的覆盖标准。A) 程序的内部逻辑 B) 程序的复杂结构C) 使用说明书 D) 程序的功能(分数:2.00)A.B.C.D.10.以下程序的输出
5、结果是_。#includestdio.h#define FUDGE(y) 2.84+y#define PR(a) printf(“%d“,(int)(a)#define PRINT1(a) PR(a);putchar(/n)main()int x=2;PRINT1(FUDGE(5)*x);A) 11 B) 12 C) 13 D) 15(分数:1.00)A.B.C.D.11.以下只有在使用时才为该类型变量分配存储单元的存储类说明是_。A) auto 和 static B) auto 和 registerC) register 和 static D) extern 和 register(分数:1.
6、00)A.B.C.D.12.软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指A) 模块间的关系 B) 系统结构部件转换成软件的过程描述C) 软件层次结构 D)软件开发过程(分数:1.00)A.B.C.D.13.有以下程序:main()unsigned char a,b,c;a=0x3; b=a|0x8; c=b1;printf(“%d%d/n“,b,C);程序运行后的输出结果是( )。A) -11 12 B) -6 -13 C) 12 24 D) 11 22(分数:1.00)A.B.C.D.14.在一个 C 语言程序中A) main 函数必须出现在所有函数之前 B) main
7、 函数可以在任何地方出现C) main 函数必须出现在所有函数之后 D) main 函数必须出现在固定位置(分数:1.00)A.B.C.D.15.下列叙述中,不属于测试的特征的是 ( )A) 测试的挑剔性 B) 完全测试的不可能性 C) 测试的可靠性 D) 测试的经济性(分数:1.00)A.B.C.D.16.在关系数据库中,用来表示实体之间联系的是_。A) 树结构 B) 网结构 C) 线性表 D) 二维表(分数:1.00)A.B.C.D.17.已知函数的调用形式:fread(buf,size,count,fp),参数 buf 的含义是( )。A) 一个整型变量,代表要读入的数据项总数B) 一个
8、文件指针,指向要读的文件C) 一个指针,指向要读入数据的存放地址D) 一个存储区,存放要读的数据项(分数:2.00)A.B.C.D.18.有如下程序段int *p,a=10,b=1;p= a=*p+b;执行该程序段后,a 的值为_。A) 12 B) 11 C) 10 D) 编译出错(分数:1.00)A.B.C.D.19.设有如下的程序段:int a(1,2,3,4,5),*t;t=a;则下列说法正确的是 ( )A) a 和 t 的内容相同B) a 数组的长度和 t 所指的字符串长度相等C) a 和 t 完全相同D) 指针变量 t 指向数组 a 的第一个元素(分数:1.00)A.B.C.D.20
9、.若有定义:int a5,*p=a;,则对 a 数组元素地址的正确引用是_。A)p+5 B)*a+1 C)printf(“%d,%u,%o,%X“,m,m,m,m);则程序运行后的输出结果是( )。A) -1,65535,177777,ffff B) -1,-1,177777,fffeC) -1,1,177777,ffff D) -1,65535,177776,fffe(分数:1.00)A.B.C.D.23.函数 rewind 的作用是( )。A) 使文件位置指针重新返回文件的开始位置B) 将文件位置指针指向文件中所要求的特定位置 C) 使文件位置指针指向文件的末尾D) 使文件位置指针自动移至
10、下一个字符位置(分数:2.00)A.B.C.D.24.以下对 C 语言函数的有关描述中,正确的是 ( )A在 C 中,调用函数时,只能把实参的值传给形参,形参的值不能传送给实参BC 函数既可以嵌套定义又可递归调用C函数必须有返回值,否则不能使用函数DC 程序中有调用关系的所有函数必须放在同一个源程序文件中(分数:1.00)A.B.C.D.25.阅读以下函数:fun(char *s1,char *s2)int i=0;while(s1i=s2ireturn(s1i=/0此函数的功能是( )。A) 将 s2 所指字符串赋给 s1B) 比较 s1 和 s2 所指字符串的大小,若 s1 比 s2 的大
11、,函数值为 1,否则函数值为 0C) 比较 s1 和 s2 所指字符串是否相等,若相等,函数值为 1,否则函数值为 0D) 比较 s1 和 s2 所指字符串的长度,若 s1 比 s2 的长,函数值为 1,否则函数值为 0(分数:1.00)A.B.C.D.26.下面程序的运行结果是( )。#includestdio.hmain() int i; for(i=1; iif(i%3=0) break; printf(“%d“, i); A) 123 B) 12 C) 23 D) 12345(分数:1.00)A.B.C.D.27.下列程序的输出结果是( )。int f1(int x,int y)ret
12、urn xy?x:y;int f2(int x,int y)return xy?y:x;main()int a=4,b=3,e=5,d=2,e,f,g;e=f2(f1(a,b),f1(e,d);f=f1(f2(a,b),f2(e,d);g=a+b+c+d-e-f;printf(“%d,%d,%d/n“,e,f,g);A) 4,3,7 B) 3,4,7 C) 5,2,7 D) 2,5,7(分数:2.00)A.B.C.D.28.为了使模块尽可能独立,要求A) 模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强B) 模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱C) 模块的内聚程度要尽量低,
13、且各模块间的耦合程度要尽量弱D) 模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强(分数:1.00)A.B.C.D.29.设有以下语句:int a=1,b=2,c;c=a(b2);执行后,c 的值为( )。A6 B7 C8 D9(分数:1.00)A.B.C.D.30.下列说法中正确的是 ( )A交换列排序法效率最高B插入类排序法效率最高C选择类排序法效率最高D不同的数据,各种算法的优劣不一(分数:1.00)A.B.C.D.31.下列程序的输出结果是_。main()int a=0,b=0,c=0;if(+a0|+b0)+c;printf(“/na=%d,b=d,c=%d“,a,b,c) ;A
14、) a=0,b=0,c=0 B) a=1,b=1,c=1C) a=1,b=0,c=1 D) a=0,b=1,c=1(分数:1.00)A.B.C.D.32.下列叙述中正确的是 _。A) C 程序中注释部分可以出现在程序中任何合适的地方B) 花括号“和“只能作为函数体的定界符C) 构成 C 程序的基本单位是函数,所有函数名都可以由用户命名D) 分号是 C 语句之间的分隔符,不是语句的一部分(分数:1.00)A.B.C.D.33.设有如下程序段char s20=“Beijing“,*p;p=s;则执行“p=s;”语句后,以下叙述正确的是( )。A可以用*p 表示 s0 Bs 数组中元素的个数和 p
15、所指字符串长度相等Cs 和 p 都是指针变量 D数组 s 中的内容和指针变量 p 中的内容相等(分数:1.00)A.B.C.D.34.有以下程序#includemain()char p20=a,b,c,d,q=“abc“, r=“abcde“strcat(p,r); strcpy(p+strlen(q),q);printf(“%d /n“,sizeof(p);程序运行后的输出结果是_。(A) 9(B) 6(C) 11(D) 7(分数:2.00)A.B.C.D.35.有以下程序:#includestring.hmain()char p20=a,b,c,d,q=“abc“,r=“abcde“;st
16、rcpy(p+strlen(q),r);strcat(p,q);printf(“%d%d/n“,sizeof(p),strlen(p);程序运行后的输出结果是_。A) 20 9 B) 9 9C) 20 11 D) 11 11(分数:2.00)A.B.C.D.36.下列叙述中错误的是( )。A) 在数据库系统中,数据的物理结构必须与逻辑结构一致B) 数据库技术的根本目标是要解决数据的共享问题C) 数据库设计是指在已有数据库管理系统的基础上建立数据库D) 数据库系统需要操作系统的支持(分数:2.00)A.B.C.D.37.下列的程序用来输出两个字符串前 7 个字符中对应相等的字符及其位置号,程序空
17、白处应该填写的是( )。#includestdiohmain()char s1=“chinese“,s2=“japnese“;int i;for(i=0;s1i!=/0 “则对 a 数组的第 i 行第 j 列无素的正确引用为( )。A) *(*(a+i)+j) B) (a+i)jC) *(a+i+j) D) *(a+i)+j(分数:2.00)A.B.C.D.46.在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是_。A) 概要设计 B) 详细设计 C) 可行性分析 D) 需求分析(分数:2.00)A.B.C.D.47.设有定义语句:char c1=92,c2=92;,则
18、以下表达式中值为零的是A)c1c2B)c1dox=x*x;while(!x);(分数:2.00)填空项 1:_52.测试用例包括输入值集和 1 值集。(分数:4.00)填空项 1:_53.有以下程序:#includestdio.hfun(int x)if(x/20)fun(x/B);printf(“%d“,x);main()fun(6);printf(“/n“);程序运行后的输出结果是_。(分数:4.00)填空项 1:_54.耦合和内聚是评价模块独立性的两个主要标准,其中 1 反映了模块内各成分之间的联系。(分数:2.00)填空项 1:_55.以下程序的功能是:通过函数 func 输入字符并统
19、计输入字符的个数。输入时用字符作为输入结束标志。请填空。 #includestdio.h long_;/*函数说明语句*/ main() long n; n=func();printf“n=%1d/n“,n); long func() long m; for(m=0;getchar()!=;_); return m: (分数:2.00)填空项 1:_56.有以下程序main()int t=1,i=5;for( ; i=0; i-) t*=i;printf(“%d/n“,t);执行后输出结果是_。(分数:1.00)填空项 1:_57.以下程序段的输出结果是_。inc i=9;printf(“%o
20、/n“, i);(分数:2.00)填空项 1:_58.一个关系表的行称为 1。(分数:2.00)填空项 1:_59.数据库系统的三级模式分别为 1 模式、内模式与外模式。(分数:2.00)填空项 1:_60.已知字符A的 ASCII 码为 65,以下程序运行后的输出结果是_。#include stdio.hmain( )char a,b;a=A+5-3; b=a+6-2;printf( “% d% c/n“, a, b);(分数:2.00)填空项 1:_61.以下程序把 3 个 NODETYPE 型的变量链接成一个简单的链表,并在 while 循环中输出链表结点数据域中的数据。请填空。#inc
21、ludestdio.hstruct nodeint data; struct node *next; ;typedef struct node NODETYPE;main()NODETYPE a, b, c, *h, *p; a.data=10; b.data=20; c.data=30; h=b.next= b.next= c.next=/0;p=h;while(p)printf(“%d“, p-data);_;(分数:2.00)填空项 1:_62.数据元素之间 1 的整体称为逻辑结构。(分数:1.00)填空项 1:_63.数据库设计分为以下 6 个设计阶段:需求分析阶段、 1、逻辑设计阶段
22、、物理设计阶段、实施阶段、运行和维护阶段。(分数:2.00)填空项 1:_64.当循环队列非空且队尾指针等于队头指针时,说明循环队列已满,不能进行入队运算。这种情况称为 1。(分数:2.00)填空项 1:_65.下面程序的运行结果是_。void swap(int *a,int *b)int *tp;t=a;a=b;b=t;main()int x=3,y=5,*p=swap(p,q);printf(“%d%d/n“,*p,*q);(分数:2.00)填空项 1:_66.数据库系统其内部分为三级模式,即概念模式、内模式和外模式。其中, 1 是用户的数据视图,也就是用户所见到的数据模式。(分数:2.0
23、0)填空项 1:_67.若输入 5、9,以下程序的运行结果为_。main()int a,b,*pt1,*pt2;printf(“input a,b:“);scanf(“%d%d“,switch(a%2) case 0:m+;break;case 1:m+;switch(b%2) defaut:m+;case0:m+;break;printf(“%d/n“,m);程序运行后的输出结果是( )。A) 1 B) 2 C) 3 D) 4(分数:2.00)A.B. C.D.解析:解析 本题考查 switch 语句。第一个 switch 语句,因为 a=6,a%2=0,所以执行 case0,将 m 加1,
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 342 答案 解析 DOC
