【计算机类职业资格】二级C语言笔试-234及答案解析.doc
《【计算机类职业资格】二级C语言笔试-234及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-234及答案解析.doc(37页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试-234 及答案解析(总分:96.00,做题时间:90 分钟)一、选择题(总题数:50,分数:60.00)1.有以下程序:void sum(int a)a0=a-1+a1; main()int a10=1,2,3,4,5,6,7,8,9,10;sum(printf(“%d/n“,a2);程序运行后的输出结果是( )。(分数:2.00)A.6B.7C.5D.82.若变量 x、y 已正确定义并赋值,以下符合 C 语言语法的表达式是( )。(分数:2.00)A.+x,y=x-B.x+1=yC.x=x+10=x+yD.double(x)/103.有以下程序段:main()int a=
2、5,*b,*c;c= b=程序在执行了“c= b=”语句后,表达式“*c”的值是( )。(分数:2.00)A.变量 a 的地址B.变量 b 中的值C.变量 a 中的值D.变量 b 的地址4.下列叙述中正确的是( )。(分数:2.00)A.break 语句只能用于 switch 语句B.在 switch 语句中必须使用 defaultC.break 语句必须与 switch 语句中的 case 配对使用D.在 switch 语句中,不一定使用 break 语句5.有以下程序:#include stdio.hint fun(char s)int n=0;while(*s=9s+;return(n)
3、;main()char s10=6,1,*,4,*,9,*,0,*;printf(“%d/n“,fun(s);程序的运行结果是( )。(分数:2.00)A.9B.61490C.61D.56.有以下程序;main()char s=“aaiou“,*ps;ps=s; printf(“%c/n“,*ps+4);程序运行后的输出结果是( )。(分数:2.00)A.aB.eC.uD.元素 s4的地址7.数据库技术的根本目标是要解决数据的( )。(分数:2.00)A.存储问题B.共享问题C.安全问题D.保护问题8.有以下程序:main()int a10=1,2,3,4,5,6,7,8,9,10),*p=p
4、rintf(“%d/n“,*p+*q);程序运行后的输出结果是( )。(分数:2.00)A.16B.10C.8D.69.有以下程序:#include stdio.hmain()FILE *fp;int i,k,n;fp=fopen(“data.dar“,“w+“);for(i=1;i6;i+)fprintf(fp,“%d “,i);if(i%3=0)fprintf(fp,“/n“);rewind(fp);fscanf(fp,“%d%d“, printf(“%d%d/n“,k,n);fclose(fp);程序运行后的输出结果是( )。(分数:2.00)A.0 0B.123 45C.1 4D.1
5、210.以下不能正确计算代数式 sin2()值的 C 语言表达式是( )。(分数:2.00)A.1/3*sin(1/2)*sin(1/2)B.sin(0.5)*sin(0.5)/3C.pow(sin(0.5),2)/3D.1/3.0*pow(sin(1.0/2),2)11.以下程序的输出结果是( )。main()int a=0,i;for(i=1;i5;i+)switch(i)casc 0:case 3:a+=2;case 1:case 2:a+=3;default:a+=5;printf(“%d/n“,(分数:1.00)A.;12.有以下程序:main()char str=“xyz“,*ps
6、=str;while(*ps) ps+;for(ps-;ps-str=0;ps-) puts(ps);执行后输出结果是( )。(分数:1.00)A.yzxyZB.zyzC.zyzD.xxyxyz xyz13.下列叙述中正确的是( )。(分数:1.00)A.在面向对象的程序设计中,各个对象之间具有密切的联系B.在面向对象的程序设计中,各个对象都是公用的C.在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小D.上述 3 种说法都不对14.若有以下函数首部:int fun(double x10,int *n)则下面针对此函数的函数声明语句中正确的是( )。(分数:1.00)A.int fun
7、(double x, int *n);B.int fun(double, int);C.int fun(double *x, int n);D.int fun(double*, int*);15.以下程序中,while 循环的循环次数是( )。main()int i=0;while(i10)if(i1) continue;if(i=5) break;i+;(分数:1.00)A.1B.10C.6D.死循环,不能确定次数16.可在 C 程序中用作用户标识符的一组标识符是( )。(分数:1.00)A.and_2007B.Datey-m-dC.HiDrTomD.caseBigl17.在关系数据库中,用
8、来表示实体之间联系的是( )。(分数:1.00)A.树结构B.网结构C.线性表D.二维表18.有以下程序段:int k=0,a=1,b=2,c=3;k=ab ? b:a; k=kc ? c:k;执行该程序段后,k 的值是( )。(分数:1.00)A.3B.2C.1D.019.有定义语句:“int x,y;”,若要通过“scanf(“%d,%d“,”语句使变量 x 得到数值 11,变量y 得到数值 12,下面四组输入形式中,错误的是( )。(分数:1.00)A.11 12回车B.11, 12回车C.11,12回车D.11,回车12回车20.有以下程序:main()int c=35; printf
9、(“%d/n“,c程序运行后的输出结果是( )。(分数:1.00)A.0B.70C.35D.121.设有定义语句:char c1=92,c2=92;,则以下表达式中值为零的是( )。(分数:1.00)A.c1c2B.c1while(y-); printf(“y=%d/n“,y);程序执行后的输出结果是( )。(分数:1.00)A.y=0B.y=-1C.y=1D.while 构成无限循环23.有以下程序:#include stdio.hmain()FILE *fp; int i,k=0, n=0;fp=fopen(“d1.dat“,“w“);for(i=1;i4;i+) fprintf(fp,“
10、%d“,i);fclose(fp);fp=fopen(“d1.dat“,“r“);fscanf(fp,“%d%d“, printf(“%d%d/n“,k,n);fclose(fp);执行后输出结果是( )。(分数:1.00)A.1 2B.123 0C.1 23D.0 024.有以下程序:point(char *p) p+=3; main()char b4=a,b,c,d, *p=b;point(p);printf(“%c/n“,*p);程序运行后的输出结果是( )。(分数:1.00)A.aB.bC.cD.d25.以下选项中非法的表达式是( )。(分数:1.00)A.0=x100B.i=j=0C
11、.(char)(65+3)D.x+1=x+126.设有如下 3 个关系表:(分数:1.00)A.B.C.D.27.有以下程序:void sort(int a, int n)int i,j,t;for(i=0;in-1;i+)for(j=i+1;jn;j+)if(aiaj)t=ai;ai=aj;aj=t;main()int aa10=1,2,3,4,5,6,7,8,9,10,i;sort(aa+2,5);for(i=0;i10;i+)printf(“%d,“,aai);printf(“/n“);程序运行后的输出结果是( )。(分数:1.00)A.1,2,3,4,5,6,7,8,9,10,B.1,
12、2,7,6,3,4,5,8,9,10,C.1,2,7,6,5,4,3,8,9,10,D.1,2,9,8,7,6,5,4,3,10,28.以下叙述中错误的是( )。(分数:1.00)A.C 程序必须由一个或一个以上的函数组成B.函数调用可以作为一个独立的语句存在C.若函数有返回值,必须通过咖语句返回D.函数形参的值也可以传回给对应的实参29.下面程序的功能是输出以下形式的金字塔图案:*main()int i,j;for(i=1;i=4;i+)for(j=1;j=4-i;j+)printf(“ “);for(j=1;j=( );j+)printf(“*“);printf(“/n“);在下划线处应填
13、入的是( )。(分数:1.00)A.iB.2*1-1C.2*i+1D.i+230.有定义语句:int b;char c10;,则正确的输入语句是( )。(分数:1.00)A.scanf(“%d%s“,B.scanf(“%d%s“,C.scanf(“%d%s“,b,c);D.scanf(“%d%s“,b,31.已有定义:char a=“xyz“,b=x,y,z;,以下叙述中正确的是( )。(分数:1.00)A.数组 a 和 b 的长度相同B.a 数组长度小于 b 数组长度C.a 数组长度大于 b 数组长度D.以述说法都不对32.一棵二叉树中共有 70 个叶子结点与 80 个度为 1 的结点,则该
14、二叉树中的总结点数为( )。(分数:1.00)A.221B.219C.231D.22933.程序中已构成如下图所示的不带头结点的单向链表结构,指针变量 s、p、q 均已正确定义,并用于指向链表结点,指针变量 s 总是作为头指针指向链表的第一个结点。(分数:1.00)A.B.C.D.34.在结构化程序设计中,模块划分的原则是( )。(分数:1.00)A.各模块应包括尽量多的功能B.各模块的规模应尽量大C.各模块之间的联系应尽量紧密D.模块内具有高内聚度、模块间具有低耦合度35.设有定义:int a=2,b=3,c=4;,则以下选项中值为 0 的表达式是( )。(分数:1.00)A.(!a=1)x
15、=(ab) printf(“%d/n“,x);程序的运行结果是( )。(分数:1.00)A.0B.1C.2D.337.有以下程序:main()char a1=M,a2=m;printf(“%c/n“,(a1,a2);以下叙述中正确的是( )。(分数:1.00)A.程序输出大写字母 MB.程序输出小写字母 mC.格式说明符不足,编译出错D.程序运行时产生出错信息38.有以下程序:#include string.hmain()char str20=“Hello“,“beijing“,*p=str;ptintf(“%/n“,strlen(p+20);程序运行后的输出结果是( )。(分数:1.00)A
16、.0B.5C.7D.2039.有以下计算公式:(分数:1.00)A.B.C.D.40.若整型变量 a、b、c、d 中的值依次为:1、4、3、2。则条件表达式 ab?a:cd?c:d 的值是( )。(分数:1.00)A.1B.2C.3D.441.下面选项中不属于面向对象程序设计特征的是( )。(分数:1.00)A.继承性B.多态性C.类比性D.封装性42.若有一些定义和语句:#include stdio.hint a=4,b=3,*p,*q,*w;p= q= w=q; q=NULL;则以下选项中错误的语句是( )。(分数:1.00)A.*q=0;B.w=p;C.*p=a;D.*p=*w;43.以
17、下不能定义为用户标识符的是( )。(分数:1.00)A.scanfB.VoidC._3com_D.int44.以下叙述中正确的是( )。(分数:1.00)A.构成 C 程序的基本单位是函数B.可以在一个函数中定义另一个函数C.main()函数必须放在其他函数之前D.所有被调用的函数一定要在调用之前进行定义45.以下数组定义中错误的是( )。(分数:1.00)A.int x3=0;B.int x23=1,2,3,4,5,6;C.int x3=1,2,3,4,5,6;D.int x23=(1,2,3,4,5,6;46.以下程序调用 fmdmax 函数返回数组中的量大值:findmax(int *a
18、,int n)int *p,*s;for(p=a,s=a;p-an;p+)if(_)s=p;return(*s);main()int x5=12,21,13,6,18;printf(“%d/n“,findmax(x,5);在下划线处应填入的是( )。(分数:1.00)A.psB.*p*sC.apasD.p-ap-s47.有以下程序;void f(int *x,int *y)int t;t=*x; *x=*y; *y=t;main()int a8=1,2,3,4,5,6,7,8,i,*p,*q;p=a; q=while (pq)f(p,q);p+; q-; for(i=0;i8; i+) pri
19、ntf(“%d,“,ai);程序运行后的输出结果是( )。(分数:1.00)A.8,2,3,4,5,6,7,1,B.5,6,7,8,1,2,3,4,C.1,2,3,4,5,6,7,8,D.8,7,6,5,4,3,2,1,48.下列叙述中错误的是( )。(分数:1.00)A.在数据库系统中,数据的物理结构必须与逻辑结构一致B.数据库技术的根本目标是要解决数据的共享问题C.数据库设计是指在已有数据库管理系统的基础上建立数据库D.数据库系统需要操作系统的支持49.某二叉树中有 n 个度为 2 的结点,则该二叉树中的叶子结点数为( )。(分数:1.00)A.n+1B.n-1C.2nD.n/250.下列
20、选项中不属于结构化程序设计方法的是( )。(分数:1.00)A.自顶向下B.逐步求精C.模块化D.可复用二、填空题(总题数:17,分数:36.00)51.设一棵完全二叉树共有 700 个结点,则在该二叉树中有 【1】 个叶子结点。(分数:2.00)填空项 1:_52.在面向对象方法中, 【2】 描述的是具有相似属性与操作的一组对象。(分数:2.00)填空项 1:_53.诊断和改正程序中错误的工作通常称为 【3】 。(分数:2.00)填空项 1:_54.对下列二叉树进行中序遍历的结果为 【4】 。(分数:2.00)填空项 1:_55.在结构化分析使用的数据流图(DFD)中,利用 【5】 对其中的
21、图形元素进行确切解释。(分数:2.00)填空项 1:_56.执行以下程序后的输出结果是 【6】 。main()int a=10;a=(3*5,a+4); printf(“a=%d/n“,a);(分数:2.00)填空项 1:_57.以下程序运行后的输出结果是 【7】 。main()int m=011,n=11;printf(“%d %d/n“,+m,n+);(分数:2.00)填空项 1:_58.有以下程序:main()int t=1,i=5;for(; i=0;i-) t*=i;printf(“%d/n“,t);执行后输出结果是 【8】 。(分数:2.00)填空项 1:_59.以下程序的运行结果
22、是 【9】 。main()int a=2,b=7,c=5;switch(a0)case 1:switch (b0)case 1:printf(“); break;case 2:pnntf(“!“); break;case 0:switch (c=5)case 0:pnntf(“*“); break;case 1:printf(“#“); break;case 2:printf(“$“); break;default: printf(“printf(“/n“);(分数:2.00)填空项 1:_60.有以下程序段,且变量已正确定义和赋值。for(s=1.0, k=1; k=n;k+) s=s+1.
23、0/(k*(k/1);printf(“s=%f/n/“,s);请填空,使下面程序段的功能与之完全相同。s=1.0; k=1;while( 【10】 ) s=s+1.0/(k*(k+1); 【11】 ; printf(“s-=%f/n/n“,s);(分数:4.00)_61.以下程序的输出结果是 【12】 。#include stdio.hmain()int i;for(i-a; if; i+,i+) printf(“%c“,i-a+A);printf(“/n“);(分数:2.00)填空项 1:_62.函数 YangHui 的功能是把杨辉三角形的数据赋给二维数组的下半三角,形式如下:11 11 2
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 234 答案 解析 DOC
