【计算机类职业资格】二级C语言笔试-42及答案解析.doc
《【计算机类职业资格】二级C语言笔试-42及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-42及答案解析.doc(30页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试-42 及答案解析(总分:94.00,做题时间:90 分钟)一、选择题(总题数:50,分数:60.00)1.结构化程序流程图中一般包含 3 种基本结构。下述结构中,_不属于其基本结构。(分数:2.00)A.顺序结构B.嵌套结构C.循环结构D.条件结构2.计算机中,能够用来与外存交换信息的是_。(分数:2.00)A.键盘B.RAMC.显示器D.ROM3.有如下说明:int a10=1,2,3,4,5,6,7,8,9,10,*p=a;则数值为 9 的表达式是_。(分数:2.00)A.*p+9B.*(p+8)C.*p+=9D.p+84.在 C 语言中,引用数组元素时,其数组下标的数
2、据类型允许是_。(分数:2.00)A.整型常量B.整型表达式C.整型常量或整型表达式D.任何类型的表达式5.以下的 for 循环_。for(x=0,y=0;(y!=123)|(x4);x+)(分数:2.00)A.是无限循环B.循环次数不定C.执行 4 次D.执行 3 次6.以下正确的说法是_。(分数:2.00)A.实参和与其对应的形参各占用独立的存储单元B.实参和与其对应的形参共用一个存储单元C.只有当实参和与其对应的形参同名时才共用存储单元D.型参是虚拟的,函数在没有被调用时,不占用存储单元7.以下程序的输出结果是_。main()int a33=1,2,3,4,5,6,i,j,s=0;for
3、(i=1;i3;i+)for(j=0;j=i;j+) s+=aij;printf(“%d/n“,s);(分数:2.00)A.18B.19C.20D.218.计算机的存储器完整的应包括_。(分数:2.00)A.内存储器与外存储器B.磁盘、磁带与光盘C.RAM 与 ROMD.软盘与硬盘9.在具有 n(n1)个结点的完全二叉树中,结点 i(2in)的左孩子结点是_。(分数:2.00)A.2iB.2i+1C.不存在D.2i-110.对一个关系投影操作以后,新关系的元组个数_原来关系的元组个数。(分数:2.00)A.小于B.小于或等于C.等于D.大于11.若有以下定义,则正确的 swish 语句是_。f
4、loat x;int a,b;(分数:1.00)A.switch(x)case 1.0:printf(“*/n“);case 2.0:printf(“*/n“);B.switch(x)case 1,2:printf(“*/n“);case 3:printf(“*/n“);C.switch(a+b)case 1:printf(“/n“);case 1+2:printf(“*/n“);D.switch(a+b);case 1:printf(“*/n“);case 2:printf(“*/n“);12.在下列叙述中,正确的一条是_。(分数:1.00)A.对 while 循环、do-while 循环和
5、 for 循环,可以用 continue 语句跳出循环B.表达式 1+23 和 sizeof(3.8)的结果分别为 24 和 8C.函数 fputc(c, stdout)与 putchar(c)的结果相同D.在有参函数中,定义函数中指定的形参变量在程序一开始执行时便分配内存单元13.以下程序段的输出结果是_。int x=5;doptintf(“%2d/n“,x-);while(!x);(分数:1.00)A.5B.无任何输出C.4D.陷入死循环14.以下程序的输出结果是_。main()int i,k,a10,p3;k=5;for(i=0;i10;i+) ai=i;for(i=0;i3;i+) p
6、i=ai*(i+1);for(i=0;i3;i+) k+=pi*2;printf(“%d/n“,k);(分数:1.00)A.20B.21C.22D.2315.在宏定义#define PI 3.14159 中,用宏名 PI 代替一个_。(分数:1.00)A.单精度数B.双精度数C.常量D.字符串16.若运行时输入 12,则以下程序的输出结果是_。main()intx,y;scanf(“%d“,y=x12? x+1:x-1;printf(“%d/n“,y);(分数:1.00)A.10B.11C.12D.1317.以下程序的输出结果是_。main()int a=-1,b=1,k;if(+a0)els
7、eprintf(“%d %d/n“,b,(分数:1.00)A.;A) -18.以下所列的 c 语言常量中,错误的是_。(分数:1.00)A.0xFFB.1.2e0.5C.2LD./7219.若 a 为 int 类型,且其值为 3,则执行完表达式 a+=a-=a*a 后,a 的值是_。(分数:1.00)A.-3B.9C.-12D.620.当执行下面程序且输入 a boy 时,输出的结果是_。#includestdio.h#includestring.hmain()char ss81=“A BOY“,hh81,*pt;scanf(“%s“,hh);pt=strcat(ss,hh);puts(pt)
8、;printf(“%s/n“,hh);(分数:1.00)A.A BOY aaB.A BOY a boya boyC.A BOY a boy aD.A BOY a boy a boy21.十进制数 555 的十六进制数表示形式为_。(分数:1.00)A.220B.22AC.22BD.22C22.设有如下定义,则以下叙述中正确的是_。int(*ptr)();(分数:1.00)A.ptr 是指向一维数组的指针变量B.ptr 是指向 int 型数据的指针变量C.ptr 是指向函数的指针,该函数返回一个 int 型数据D.ptr 是一个函数名,该函数的返回值是指向 int 型数据的指针23.设 x、y、
9、t 均为血型变量,则执行语句 x=y=3;t=+x|+y;后,y 的值为_。(分数:1.00)A.不定值B.4C.3D.124.在多媒体计算机系统中,不能存储多媒体信息的是_。(分数:1.00)A.光盘B.磁盘C.磁带D.光缆25.C 语言中 while 循环和 do-while 循环的主要区别是_。(分数:1.00)A.do-while 的循环体至少无条件执行一次B.while 的循环控制条件比 do-while 的循环控制条件严格C.do-while 允许从外部转到循环体内D.do-while 的循环体不能是复合语句26.设下面程序的可执行文件名为 prg.exe,在该程序所在子目录下输入
10、以下命令行:prg hello good回车则程序的输出结果是_。main()(int argc,char*argv)int i;if(argc=0)return;for(i=1;iargc;i+)printf(“%c“,*argvi);(分数:1.00)A.hello goodB.hgC.helD.hellogood27.若已定义 x 和 y 为 double 类型,则表达式 x=1,y=x+5/2 的值是_。(分数:1.00)A.3B.4C.3.0D.3.528.下面程序的输出结果是_。main()int a=1,2,3,4,5,6,7,8,9,0,*p;p=a;ptintf(“%d/n“
11、,*p+9);(分数:1.00)A.0B.1C.10D.929.C 语言中,运算对象必须是整型数的运算符是_。(分数:1.00)A.%B./C.%和/D.*30.执行下面的语句后,表达式*(p0+1)+*(q+2)的值为_。int a=5,4,3,2,1,*p=a+3,a+2,a+1,a,*q=p;(分数:1.00)A.8B.7C.6D.531.以下对 C 语言中共用体类型数据的正确叙述是_。(分数:1.00)A.可以对共用体变量名直接赋值B.一个共用体变量中可以同时存放其所有成员C.一个共用体变量中不能同时存放其所有成员D.共用体类型定义中不能出现结构体类型的成员32.若有说明:int s2
12、3=0;,则下面正确的叙述是_。(分数:1.00)A.只有元素 s00可得到初值 0B.此说明语句不正确C.数组 s 中各元素都可得到初值,但其值不一定为 0D.数组 s 中每个元素均可得到初值 033.设有以下语句:char a=3,b=6,c;c=ab2;则 c 的二进制值是_。(分数:1.00)A.00011011B.00010100C.00011100D.0001100034.堆排序是一种_排序。(分数:1.00)A.插入B.选择C.交换D.归并35.以下正确的叙述是_。(分数:1.00)A.C 语言允许 main 函数带形参,且形参个数和形参名均可由用户指定B.C 语言允许 main
13、 函数带形参,形参名只能是 argc 和 argvC.当 main 函数带有形参时,传给形参的值只能从命令行中得到D.若有说明:main(int argc,char *argv),则形参 argc 的值必须大于 136.以下程序的输出是_。struct stint x;int*y;*p;int dt4=10,20,30,40;struct st aa4=50,main()p=aa;printf(“%d/n“,+(p-X);(分数:1.00)A.51B.11C.50D.6037.设有如下的函数_。f(x)float x;printf(“/n%d“,x*x);则函数类型(分数:1.00)A.与参数
14、 x 类型相同B.是 voidC.是 intD.无法确定38.若有以下定义和语句:char*s1=“12345“,*s2=“1234“;printf(“%d/n“,strlen(strcpy(s1,s2);则输出结果是_。(分数:1.00)A.4B.5C.9D.1039.以下所列的各函数首部中,正确的是_。(分数:1.00)A.void play(Var:Integer,var b:Integer)B.void play(int a,b)C.void play(int a,intb)D.Sub play(a as integer,b as integer)40.当 a=1,b=3,c=5,d=
15、4 时,执行下面一段程序后,x 的值为_。if(ab)if(cd) x=1;elseif(ac)if(bd) x=2;elsex=3;elsex=6;elsex=7;(分数:1.00)A.1B.2C.3D.641.在 C 语言中,函数的隐含存储类别是_。(分数:1.00)A.autoB.staticC.externD.无存储类别42.以下程序的输出结果是_。int d=1;fun(int p)static int d=5;d+=p;printf(“%d “,d);return(d);main()int a=3;printf(“%d/n“,fun(a+fun(d);(分数:1.00)A.699B
16、.669C.6 15 15D.661543.下列程序的输出结果是_。#includestdio.hmain()char *p1,*p2,str50=“xyz“;p1=“abcd“;p2=“ABCD“;strcpy(str+2,strcat(p1+2,p2+1);ptintf(“%s“,str);(分数:1.00)A.xyabcABB.abcABzC.ABabczD.xycdBCD44.已知字母 A 的 ASC码为十进制数的 65,下面程序的输出是_。main()char ch1,ch2;ch1=A+5-3;ch2=A+6-3;printf(“%d,%c/n“,ch1,ch2);(分数:1.00
17、)A.67,DB.B,CC.C,DD.不确定的值45.下列关于“数据库系统(DBS)”的叙述中,正确的一条是_。(分数:1.00)A.DBS 是指在计算机系统中引入数据库后的系统构成B.DBS 是帮助用户建立、使用和管理数据库的一种计算机软件C.DBS 是用户建立的若干数据库文件的集合D.DBS 是一种新颖的关系数据库管理系统46.瀑布模型适合于_。(分数:1.00)A.大型软件系统开发B.中型软件系统开发C.小型软件系统开发D.大、中、小型软件系统开发47.字符0的 ASC码的十进制数为 48,且数组的第 0 个元素在低位,则以下程序的输出结果是_。#includestdio.hmain()
18、unionint i2;long k;char c4;r,*s=s-i0=0x39;s-i1=0x38;printf(“%c/n“,s-c0);(分数:1.00)A.39B.9C.38D.848.若有以下定义:int a=1,2,3,4,5,6,7;char c1=b,c2=1;则数值不为 1 的表达式是_。(分数:1.00)A.a0B.c-c1C.a1-c2D.c1-049.若有宏定义如下:#define X 5#define Y X+1#define Z Y*X/2以下程序段的输出结果是_。int a;a=Y;printf(“%d/n“,Z);printf(“%d/n“,-(分数:1.00
19、)A.;A) 76B) 126C) 125D) 750.下列程序的输出结果是_。main()char a10=9,8,7,6,5,4,3,2,1,0,*p=a+5;printf(“%d“,*-p);(分数:1.00)A.非法B.a4的地址C.5D.3二、填空题(总题数:17,分数:34.00)51.十进制数 111 用八位二进制数表示为 【1】 。(分数:2.00)填空项 1:_52.对于一棵具有 n 个结点的树,该树中所有结点的度为 【2】 。(分数:2.00)填空项 1:_53.瀑布模型将软件生存周期划分为 【3】 、开发和运行 3 个阶段。(分数:2.00)填空项 1:_54.关系可以有
20、 3 种类型,即基本关系(又称基本表或基表)、查询表和 【4】 。(分数:2.00)填空项 1:_55.存储 300 个 1616 点阵的汉字信息需要 【5】 字节。(分数:2.00)填空项 1:_56.表示条件 10x100 或 x0 的 C 语言表达式是 【6】 。(分数:2.00)填空项 1:_57.下面程序的输出结果是 【7】 。struct aaint x,*y;*p;int a8=10,20,30,40,50,60,70,80;struct aa b4=100,main()p=b;printf(%d“,*+p-y);printf(“%d/n“,+(p-x);(分数:2.00)填空项
21、 1:_58.以下程序的输出结果是 【8】 。main()int arr=30,25,20,15,10,5,*p=arr;p+;printf(“%d/n“,*(p+3);(分数:2.00)填空项 1:_59.以下函数用来求出两整数之和,并通过形参将结果传回,请填充完整。void func(int x,int y, 【9】 z)*z=x+y;(分数:2.00)填空项 1:_60.以下程序的运行结果是 【10】 。#define MAX(a,b)(ab? a:b)+1main()int i=6,j=8,k;printf(“%d/n“,MAX(i,j);(分数:2.00)填空项 1:_61.如果有以
22、下定义,则不移动指针 p,且通过指针 p 引用值为 98 的数组元素的表达式是 【11】 。int w10=23,54,10,33,47,98,72,80,61),*p=w;(分数:2.00)填空项 1:_62.若 i、j 为 int 类型,则以下程序段内循环体的总执行次数是 【12】 。for(i=5;i;i-)for(j=0;j3;j+)(分数:2.00)填空项 1:_63.以下程序的运行结果为 【13】 。main()int i,j,a34=1,2,3,4,5,6,7,8,9,10,11,12,b43;for(i=0;i3;i+)for(j=0;j4;j+)bji=aij;for(i=0
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 42 答案 解析 DOC
