【计算机类职业资格】二级C语言笔试-267及答案解析.doc
《【计算机类职业资格】二级C语言笔试-267及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-267及答案解析.doc(29页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试-267 及答案解析(总分:88.00,做题时间:90 分钟)一、选择题(总题数:50,分数:50.00)1.以下叙述中正确的是 ( )(分数:1.00)A.在 C 程序中,语句之间必须要用分号(;)分隔B.在 C 程序中#include 行和#define 行不是 C 语句C.程序中的注释部分可有可无,通常可以省略D.当输入数值数据时,对于整型变量只能输入整型值:对于实型变量只能输入实型值2.下面能正确进行字符串赋值操作的语句是 ( )(分数:1.00)A.char s5“ABCDE“B.char s5=A,B,C,D,E;C.char *s;s=“APCDEF“D.cha
2、r *s;scanf(“%s“,s);3.有以下程序;int f1(double(分数:1.00)A.return a*a; int f2(double x,double y)double a, b;an(x);b=f1(y);return a+b;main()double w;wf2(1.1,2.0);变量 w 中的值是 ( )A) 5.21B.5C.5.0D.0.04.设有如下的变量定义;int i=8,k,a,b;unsinged long w=5;double x=1.42,y=5.2则以下符合 C 语言语法的表达式是 ( )(分数:1.00)A.a+=a-=(b=4)*(a=3)B.
3、x%(-3);C.aa*32D.yfloat(5.以下语句的输出结果是 ( )printf(“%d,%d,%u/n“,016,16,-16);(分数:1.00)A.16,16,65420B.14,16,6542C.16,16,-16D.14,16,-166.表示关系 xyz 应使用 C 语言表达式 ( )(分数:1.00)A.(xy)*p*p1;*p1*p2;*p2=*p;则该程序功能为 ( )(分数:1.00)A.交换*p1 和*p2 的值B.正确,但无法改变*p1 和*p2 的值C.交换*p1 和*p2 的地址D.可能造成系统故障,因为使用了空指针8.当输入为“quert?”时,下面程序的
4、执行结果是 ( )#indudestdio.hmain()char c;c=getehar();while(c=getchar()!=?)putchar(+c) ;(分数:1.00)A.QuertB.vfsuC.quert?D.rvfsu?9.以下正确的数组定义语句是 ( )(分数:1.00)A.int y14=1,2,3,4,5,B.float x31,2,3C.long s23=1,1,21,2,3,D.double t3010.以下 if 语句书写正确的是 ( )(分数:1.00)A.if(x=0;) printf(“%f“,x);elseprintf(“%f“,-x);B.if(x0)
5、x=x+1;printf(“%f“,x);else printf(“%f“,-x);C.if(x0);xx+1;printf(“%f“,x); else printf(“%f“,-x);D.if(x0)x=x+1;printf(“%f“,x)else printf(“%f“,-x);11.分析以下程序,执行后的输出结果是 ( )int f1(int x,int y)return xy? x:y;int f2(int x,int y)return xy? y:x;main()int a4,b=3,c5,d,e,f;d=f1(a,B) ;d=f1(d,C) ;e=f2(a,B) ;ef2(e,C)
6、 ;f=a+b+c-d-e;printf(“%d,%d,%d“,d,f,e);(分数:1.00)A.3,4,5B.5,3,4C.5,4,3D.3,5,412.以下对枚举类型名的定义中正确的是 ( )(分数:1.00)A.enum a=one,two,three;B.enum aone=9,two=-1,three=200;C.enum a“one“,“two“,“four“;D.enum a“nine“,“two“,“three“;13.C 语言规定,函数返回值的类型是由 ( )(分数:1.00)A.return 语句中的表达式类型所决定B.调用该函数时的主调函数类型所决定C.调用该函数时系统
7、临时决定D.在定义该函数时所指定的函数类型决定14.C 语言规定如果调用 fpute 函数输出成功,则返回值是 ( )(分数:1.00)A.1B.输出的字符C.0D.true15.以下程序的输出结果是 ( )main()int a=-1,b=4,k;k=(+a=0)printf(“%d%d%d/n“ ,k,a, B) ;(分数:1.00)A.1 0 4B.0 0 4C.1 0 3D.0 0 316.若有以下定义语句:double a5; int i0;能正确给 a 数组元素输入数据的语句是 ( )(分数:1.00)A.scanf(“%lf%lf%lf%lf%lf,a) ;B.for(i=0;i
8、=5;i+)scanf(“%lf,a+i);C.while(i5)scanf(“%lf“,B.put(“%d%d%d“,a,b,c);C.input(“%d%d%d“,a,b,c);D.scanf(“%d%d%d“,while (k=0)k=k+1;则以下说法中正确的是 ( )(分数:1.00)A.while 循环执行 20 次B.循环是无限循环C.循环体语句一次也不执行D.循环体语句执行一次20.以下合法的赋值语句是 ( )(分数:1.00)A.x=y100B.d-;C.x+y;D.c=int(a+b) ;21.设有如下定义:struct skint a;float b;data;int *
9、p;若要使 p 指向 data 中的 a 域,正确的赋值语句是 ( )(分数:1.00)A.pb=a*a+1;return b; A) 单精度型B.双精度型C.空类型D.整型23.若某二叉树的前序遍历访问顺序是 abdgcefh,中序遍历访问顺序是 dgbaechf,则其后序遍历的结点访问顺序是 ( )(分数:1.00)A.bdgcefhaB.gdbecfhaC.bdgaechfD.gdbehfca24.以下各组选项中,均能正确定义二维实型数组 a 的选项是 ( )(分数:1.00)A.float a34; float a4; float a3=1,0;B.float a(3,4);float
10、 a34;float a=0,0;C.float a34 static float a4=0,0;D.float a34;float a3;25.在 C 语言中,函数的隐含存储类别是 ( )(分数:1.00)A.staticB.autoC.externD.register26.下述关于数据库系统的叙述中正确的是 ( )(分数:1.00)A.数据库系统减少了数据冗余B.数据库系统避免了一切冗余C.数据库系统中数据的一致性是指数据类型一致D.数据库系统比文件系统能管理更多的数据27.单个用户使用的数据视图的描述称为 ( )(分数:1.00)A.外模式B.概念模式C.内模式D.存储模式28.若有如下
11、程序:int sub()static int n1;int x=1;x*=n;n+;return x; main()int n,t1;for(n1;n6;n+)t*sub();printf(“%d/n“,t); 则程序运行后的输出结果是 ( )(分数:1.00)A.15B.120C.34560D.-3097629.下列工具中为需求分析常用工具的是 ( )(分数:1.00)A.PADB.PFDC.NSD.DFD30.软件开发的结构化生命周期方法将软件生命周期划分成 ( )(分数:1.00)A.定义、开发、运行维护B.设计阶段、编程阶段、测试阶段C.总体设计、详细设计、编程调试D.需求分析、功能定
12、义、系统设计31.开发大型软件时,产生困难的根本原因是 ( )(分数:1.00)A.大系统的复杂性B.人员知识不足C.客观世界千变万化D.时间紧、任务重32.下列关于栈的叙述正确的是 ( )(分数:1.00)A.栈是非线性结构B.栈是一种树状结构C.栈具有先进先出的特征D.栈具有后进先出的特征33.有以下程序#includestdlib.hstruct NODEint num;struct NODE*next;main()struct NODE *P,*q,*r;p(struct NODE *)malloc(sizeof(struct NODE);q=(struct NODE *)malloc
13、(sizeof(struet NODE);r=(struct NODE*)malloc(sizeof(struct NODE):p-num10;q-num20;r-num30;p-next=q;q-next=r;printf(“%d/n“,p-num+q-next-num):程序运行后的输出结果是 ( )(分数:1.00)A.10B.20C.30D.4034.C 语言可执行程序的开始执行点是 ( )(分数:1.00)A.程序中第一条可执行语言B.程序中第一个函数C.程序中的 main 函数D.包含文件中的第一个函数35.下面对对象概念描述错误的是 ( )(分数:1.00)A.任何对象都必须有继
14、承性B.对象是属性和方法的封装体C.对象间的通讯靠消息传递D.操作是对象的动态属性36.以下选项中,与 k=n+完全等价的表达式是 ( )(分数:1.00)A.k=n,n=n+1B.n=n+1,knC.k=+nD.k+=n+137.有以下程序main( )int a=0,i;for(i=1;i5; i+)switch (i)case 0case 3:a+ =2;case 1;case 2;a+=3;default, a+=5;printf(“%d/n“,(分数:1.00)A.;:printf(“%d/n“,sizeof(stru),(分数:1.00)A.2B.4C.8D.1039.若定义了以下
15、函数;void sub()*t=(int *)malloc(10*sizeof(int); 其中 t 是该函数的形参,要求通过 t 把动态分配存储单元的地址传回主调函数,则形参 t 的正确定义应该是 ( )(分数:1.00)A.int *tB.int *tC.long *tD.long *t40.以下说法正确的是 ( )(分数:1.00)A.宏定义是 C 语句,所以要在行末加分号B.可以使用#undef 命令来终止宏定义的作用域C.在进行宏定义时,宏定义不能层层置换D.对程序中用双引号括起来的字符串内的字符,与宏名相同的要进行置换41.以下程序运行后,输出结果是 ( )#includestdi
16、o.hss(char *s)char*ps;while(*p) p+return(p-s);main()char *a=“abded“int i;i=ss((分数:1.00)A.;42.若有如下定义:int s3则下面表达式中不能代表数组元素 s1的地址的是 ( )(分数:1.00)A.for(i=0;i2,i+)for(j=0;j2;j+)nj=ni+1;printf(“%d/n“,n1);程序运行后的输出结果是 ( )(分数:1.00)A.2B.1C.0D.344.关系数据库管理系统能实现的专门关系运算包括 ( )(分数:1.00)A.排序,索引、统计B.选择、投影、连接C.关联、更新、排
17、序D.显示、打印、制表45.假定所有变量均已正确说明,下列程序段运行后 x 的值是a=d=c=0;x=35;if(!(分数:1.00)A.x=-1,else if(B.;if(C.x=3;46.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是 ( )(分数:1.00)A.地址传递B.单向值传递C.由实参传给形参,再由形参传回实参D.传递方式由用户指定47.若有如下说明:union schar a9int b; float c;t;则下列叙述正确的是 ( )(分数:1.00)A.共用体变量 t 不能作为函数的参数B.通过引用共用体变量名 t 可以得到成员的值C.共用体变量 t
18、的地址和它的各成员的地址不同D.共用体变量 t 所占的内存长度等于它的各成员所占的内存长度之和48.若以下程序所生成的可执行文件名为 file1.exe,main(int argc,char *argv)while(argc-0)+argv;printf(“%s“,* argv);当键入以下命令执行该程序时:FILE1 CHINA BEUING SHANGHAI程序的输出结果是 ( )(分数:1.00)A.CHINA BEIJIANG SHANGHAIB.FILE1 CHINA BEIJINGC.C B SD.F C B49.有如下程序段:int a=14,b15,x,char c=A;x=(
19、a、+x;、xx+1;、x=1+x;,执行后都使变量 x 中的值增 1,请写出一条同一功能的赋值语句(不得与列举的相同) 【7】 。(分数:2.00)填空项 1:_58.下列程序的输出结果是 【8】 。main()int a=1,b=2;aa+b;ba-b,aa-b;printf(“%d,%d/n“,a,b) ;(分数:2.00)填空项 1:_59.下面程序的执行结果是 【9】 。main()int a5,b4,c=9;printf(“#%d“,(aC) ?c*b:a*B) ;(分数:2.00)填空项 1:_60.以下程序的功能是从键盘上输入一行字符,存入一个字符数组中,然后输出该字符串。请填
20、空。main()char str81,*sptr;int i;for(i0;i80;i+)strigetchar();if(stri=/n)break;stri 【10】 ;sptr=str1while(* sptr)putchar(* sptr 【11】 );(分数:2.00)填空项 1:_61.下面程序的输出结果是 【12】 。char b“ABCD“;main()char *p=b;for(;*p;p+)printf(“%s“,p);printf(“/n“);(分数:2.00)填空项 1:_62.以下程序调用随机函数得到 N 个 20 以内的整数放在 s 数组中。函数 fun 的功能是找
21、出 s 数组中的最大数(不止一个)所在下标传回主函数进行输出,并把最大值作为函数值返回,请填空。#define N 30man()int sN,dN,i,k,m;for(i0,iN;i+)sirand()%20;printf(“%3d“,si);mfun( 【13】 );printf(“m=%d/n“,m);printf(”The index ;/n“);for(i=0;ik;i+)printf(“%4d“,di);printf(“/n/n“);fun(int*w,int*d,int * k)int i,j,m=0,v;for(i=0;iN;i+)if(wiwm) 【14】 ;vwm;for(
22、i=0,j=0;iN;i+)if(wiv) 【15】 ;*k 【16】 ;return 【17】 ;(分数:10.00)填空项 1:_63.下面程序中函数 creat 用于建立一个带头结点的单向链表,新产生的结点总是插在链表的末尾,单向链表的头指针作为函数值返回。将程序补充完整。#includestdiao.hstruct listchar data; struct list * next;;struct list * creat()struct list *h,*p,*q; char ch;h 【18】 malloc(sizeof(struct list);p=q=h;ch=getchar(
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 267 答案 解析 DOC
