【计算机类职业资格】二级C语言笔试53及答案解析.doc
《【计算机类职业资格】二级C语言笔试53及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试53及答案解析.doc(20页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试 53及答案解析(总分:82.00,做题时间:90 分钟)一、B选择题/B(总题数:50,分数:50.00)1.程序中对 fun函数有如下说明 void*fun(); 此说明的含义是(分数:1.00)A.fun函数无返回值B.fun函数的返回值可以是任意的数据类型C.fun函数的返回值是无值型的指针类型D.指针 fun指向一个函数、该函数无返回值2.以下能正确定义二维数组的是(分数:1.00)A.int a3;B.int a3=2*3;C.int a3=;D.int a23=1,2,3,4;3.下面不属于软件设计原则的是(分数:1.00)A.抽象B.模块化C.自底向上D.信息隐
2、蔽4.结构化程序设计的一种基本方法是(分数:1.00)A.筛选法B.递归法C.归纳法D.逐步求精法5.以下定义语句中正确的是(分数:1.00)A.char a=Ab=B;B.float a=b=10.0;C.int a=10,*b= if(ij) t=ai;ai=aj;aj=t; i+; j-; fun(a,i,j); main() int x=2,6,1,8,i; fun(x,0,3); for(i=0;i4;i+) printf(“%2d“,xi); printf(“/n“); 程序运行后的输出结果是(分数:1.00)A.1 2 6 8B.8 6 2 1C.8 1 6 2D.8 6 1 2
3、11.有以下程序 main() int i=0,s=0; for(;) if(i=3i=5) continue; if(i=6) break; i+; s+=i; ; printf(“%d/n“,s); 程序运行后的输出结果是(分数:1.00)A.10B.13C.24D.程序进入死循环12.函数重载是指(分数:1.00)A.两个或两个以上的函数取相同的函数名,但形参的个数或类型不同B.两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同C.两个以上的函数名字不同,但形参的个数或类型相同D.两个以上的函数取相同的函数名,并且函数的返回类型相同13.用 C语言编写的代码程序(分数:
4、1.00)A.可立即执行B.是一个源程序C.经过编译即可执行D.经过编译解释才能执行14.有以下程序 main() int i; for(i=0;i3;i+) switch(i) case0:printf(“%d“,i); case2:printf(“%d“,i); default:printf(“%d“,i); 程序运行后的输出结果是(分数:1.00)A.022111B.021021C.000122D.01215.有以下程序 main() int x=1,3,5,7,2,4,6,0,i,j,k; for(i=0;i3;i+) for(j=2;ji;j-) if(xj+1xj) k=xj;xj
5、=xj+1;xj+1=k; for(i=0;i3;i+) for(j=4;j7-i;j+) if(xjxj+1) k=xj;xj;xj+1;xj+1=k; for(i=0;i8;i+)printf(“%d“,xi); printf(“/n“); 程序运行后的输出结果是(分数:1.00)A.75310246B.01234567C.76310462D.1357024616.设有下列二叉树: (分数:1.00)A.ABCDEFB.DABECFC.BDAECFD.DBEFCA17.有以下程序 main() int a=666,b=888; Printf(“%d/n“,a,b) ; 程序运行后的输出结果
6、是(分数:1.00)A.错误信息B.666C.888D.666,88818.有以下程序 main() int a=7,b=8,*p,*q,*r; p=i+)d+=si; printf(“%d/n“,d) ; 程序运行后的输出结果是(分数:1.00)A.9B.11C.19D.2120.若有以下说明和语句 int c4)5,(*p)5; p=c; 能够正确引用 c数组元素的是(分数:1.00)A.p+1B.*(p+3)C.*(P+1)+3D.*(p0+2)21.下列条件语句中,功能与其他语句不同的是 A) if((分数:1.00)A.printf(“%d/n“,; else printf(“%d/
7、n“,;B.if(a=0) printf(“%d/n“,; else printf(“%d/n“,;C.if(a!=0) printf(“%d/n“,; else printf(“%d/n“,;D.if(a=0) printf(“%d/n“,; else printf(“%d/n“,;22.若 x和 y代表整型数,以下表达式中不能正确表示数学关系|x-y|10 的是(分数:1.00)A.abs(x-10B.x-y-10; (48) CreatList(char*s), struct node *h,*p,*q; h=(struct node*)malloc(sizeof(struct node
8、); p=q=h; while(*s!=“/0“) p=(struct node*)malloc(sizeof(struct node);p-data= (49) ; q-next=p; q= (50) ; s+; p-next=“/0“; return h; main() char str=“link list“; struct node*head; head=CreatList(str); (分数:1.00)A.char*B.struct nodeC.struct node*D.char32.有如下程序 #includestdioh main() FILE *fpl; fpl=fopen(
9、“f1txt“,“w“); fprintf(fp1,“abc“); fclose(fp1); 若文本文件 f1txt 中原有内容为:good,则运行以上程序后文件 f1txt 中的内容为(分数:1.00)A.goodabcB.abcdC.abcD.abcgood33.有以下程序 #includestdioh main() int a=1,2,3,4,5,6,7,8,9,10,11,12,*p=a+5,*q=NULL; *q= *(p+5); printf(“%d %d/n“,*p,*q); 程序运行后的输出结果是(分数:1.00)A.运行后报错B.6 6C.6 11D.5 1034.已有定义:
10、int i,a10,*p;,则合法的赋值语句是(分数:1.00)A.p=100;B.p=a5;C.p=a2+2;D.p=a+2;35.s1和 s2已正确定义并分别指向两个字符串,若要求:当 s1所指串大于 s2所指串时,执行语句 S;则以下选项中正确的是(分数:1.00)A.if(s1s2)S;B.if(strcmp(s1,s2)S;C.if(strcmp(s2,s1)0)S;D.if(strcmp(s1,82)0)S;36.下列关于算法的时间复杂度陈述正确的是(分数:1.00)A.算法的时间复杂度是指执行算法程序所需要的时间B.算法的时间复杂度是指算法程序的长度C.算法的时间复杂度是指算法执
11、行过程中所需要的基本运算次数D.算法的时间复杂度是指算法程序中的指令条数A.p-nextB.pC.sD.s-next38.设有以下定义和语句 int a32=1,2,3,4,5,6,*p3; p0=a1; 则*(p0+1)所代表的数组元素是(分数:1.00)A.a01B.a10C.a11D.a1239.支持数据库各种操作的软件系统叫做(分数:1.00)A.数据库管理系统B.文件系统C.数据库系统D.操作系统40.若变量已正确定义,要求程序段完成求 5!的计算,不能完成此操作的程序段是(分数:1.00)A.for(i=1,p=1;i5;i+) p*=i;B.for(i=1;i5;i+) p=1;
12、 p*=i;C.i=1;p=1;while(i5)p*=i; i+;D.i=1;p=1;dop*=i; i+; while(i5);41.没有定义语句 int x6=2,4,6,8,5,7,*p=x,i; 要求依次输出 x数组 6个元素中的值,不能完成此操作的语句是(分数:1.00)A.for(i=0;i6;i+) printf(“%2d“,*(p+);B.for(i=0;i6;i+) printf(“%2d“,*(p+;C.for(i=0;i6;i+) printf(“%2d“,*p+);D.for(i=0;i6;i+) printf(“%2d“,(*+);42.有以下说明和定义语句 str
13、uct student int age;char num8; struct student stu3=20,“200401“,21,“200402“,19,“200403“; struct student *p=stu; 以下选项中引用结构体变量成员的表达式错误的是(分数:1.00)A.(p+)-numB.p-numC.(*numD.stu3age43.有以下程序 main() char a,b,c,d; seanf(“%c,%c,%d,%d“, printf(“%c,%c,%c,%c/n“,a,b,c,d) ; 若运行时从键盘上输入:6,5,65,66回车。则输出结果是(分数:1.00)A.
14、6,5,A,BB.6,5,65,66C.6,5,6,5D.6,5,6,644.有以下程序 main() unsigned int a; int b=-1; a=b; printf(“%u“,a) ; 程序运行后的输出结果是(分数:1.00)A.-1B.65535C.32767D.-3276845.结构化程序由三种基本结构组成,三种基本结构组成的算法(分数:1.00)A.可以完成任何复杂的任务B.只能完成部分复杂的任务C.只能完成符合结构化的任务D.只能完成一些简单的任务46.在关系数据模型中,通常可以把()称为属性,其值称为属性值。(分数:1.00)A.记录B.基本表C.模式D.字段47.下列
15、关于栈的叙述中,正确的是(分数:1.00)A.在栈中只能插入数据B.在栈中只能删除数据C.栈是先进先出的线性表D.栈是先进后出的线性表48.有以下程序 main() char s=“ABCD“,*p; for(p=s+1;ps+4;p+)printf(“%s/n“,p); 程序运行后的输出结果是(分数:1.00)A.ABCD BCD CD DB.A B C DC.B C DD.BCD CD DA.*sB.sC.*s+D.(*+50.有以下程序 main() int m=0256,n=256; printf(“%o%o/n“,m,n); 程序运行后的输出结果是(分数:1.00)A.0256 04
16、00B.0256 256C.256 400D.400 400二、B填空题/B(总题数:16,分数:32.00)51.算法的执行过程中,所需要的存储空间称为算法的U 【1】 /U。(分数:2.00)填空项 1:_52.按照逻辑结构分类,数据结构可分为线性结构和非线性结构,二叉树属于U 【2】 /U。(分数:2.00)填空项 1:_53.软件测试按功能划分的方法划分,通常分为U 【3】 /U测试方法和黑盒测试方法。(分数:2.00)填空项 1:_54.数据库系统在其内部分为三级模式,即概念模式、内模式和外模式。其中,U 【4】 /U给出了数据库物理存储结构和物理存取方法。(分数:2.00)填空项
17、1:_55.关系模型的完整性规则是对关系的某种约束条件,包括实体完整性、U 【5】 /U和自定义完整性。(分数:2.00)填空项 1:_56.以下程序段的输出结果是U 【6】 /U。 int i=9; printf(“%o/n“,i);(分数:2.00)填空项 1:_57.以下程序运行后的输出结果是U 【7】 /U。 main() int a,b,c; a=25; b=025; c=0x25; printf(“%d%d%d/n“,a,b,c) ; (分数:2.00)填空项 1:_58.以下程序运行后的输出结果是U 【8】 /U。 main() int p7=11,13,14,15,16,17,
18、18; int i=0,j=0; while(i7 int k; p1=a; p2=b; for(k=0;k7;k+) if(*(p1+k)=*(p2+k) printf(“%c“,*(p1+k); (分数:2.00)填空项 1:_62.以下程序运行后的输出结果是U 【12】 /U。 main() char a=“123456789“,*p; int i=0; p=a; while(*p) if(i%2=0) *p=*; p+;i+; puts(A) ; (分数:2.00)填空项 1:_63.以下程序中,for 循环体执行的次数是U 【13】 /U。 #define N 2 #define M
19、 N+1 #define K M+1*M/2 main() int i; for(i=1;iK;i+) (分数:2.00)填空项 1:_64.以下程序通过函数 SunFun求 (分数:2.00)填空项 1:_65.以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和。请填空。 main() int i,a20,sum,count; sum=count=0; for(i=0;i20;i+) scanf(“%d“,U 【16】 /U); for(i=0;i20;i+) if(ai0) count+; sum+=U 【17】 /U; printf(“sum=%d,count=%d/n“
20、,sum,count); (分数:2.00)填空项 1:_66.以下程序中,函数 SumColumMin的功能是:求出 M行 N列二维数组每列元素中的最小值,并计算它们的和值。和值通过形参传回主函数输出。请填空。 #define M 2 #define N 4 void SumColumMin(int aMN,int *sum) int i,j,k,s=0; for(i=0;iN;i+) k=0; for(j=1;jM;j+) if(akiaji)k=j; s+=U 【18】 /U; U 【19】 /U=s; main() int xMN=3,2,5,1,4,1,8,3,s; SumColum
21、Min(U 【20】 /U); printf(“%d/n“,s); (分数:2.00)填空项 1:_二级 C语言笔试 53答案解析(总分:82.00,做题时间:90 分钟)一、B选择题/B(总题数:50,分数:50.00)1.程序中对 fun函数有如下说明 void*fun(); 此说明的含义是(分数:1.00)A.fun函数无返回值B.fun函数的返回值可以是任意的数据类型C.fun函数的返回值是无值型的指针类型 D.指针 fun指向一个函数、该函数无返回值解析:解析指针函数是指其返回值的类型为地址即指针类型。本题中定义了一个指针类型的函数。2.以下能正确定义二维数组的是(分数:1.00)A
22、.int a3;B.int a3=2*3; C.int a3=;D.int a23=1,2,3,4;解析:解析选项 A中省略了第一维的长度,在 C语言中是不允许的;选项 C也是省略第一维的长度;选项 D中定义了一个 2行 3列的数组,而在赋值的时候却赋了一个 3 行的值给它,显然不正确。3.下面不属于软件设计原则的是(分数:1.00)A.抽象B.模块化C.自底向上 D.信息隐蔽解析:解析软件设计的原则包括:抽象、模块化、信息隐蔽和模块独立性。自底向上不是软件设计原则。4.结构化程序设计的一种基本方法是(分数:1.00)A.筛选法B.递归法C.归纳法D.逐步求精法 解析:解析在结构化程序设计中通
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 53 答案 解析 DOC
