欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    【计算机类职业资格】二级C语言笔试-262及答案解析.doc

    • 资源ID:1326063       资源大小:93.50KB        全文页数:31页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【计算机类职业资格】二级C语言笔试-262及答案解析.doc

    1、二级 C语言笔试-262 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:50,分数:60.00)1.以下数组定义中不正确的是 _。(分数:2.00)A.int a23;B.int b3=0,1,2;C.int c1001000;D.int d3=1,2,1,2,3,1,2,3,;2.下列不属于软件调试技术的是 _ 。(分数:2.00)A.强行排错法B.集成测试法C.回溯法D.原因排除法3.以下程序的结果是 _ 。int a,b;void fun()a=100;b=200; main()int a=5,b=7;fun()printf(“%d%d/n“,a,b) ;(分

    2、数:2.00)A.100200B.57C.200100D.754.SQL语言又称为 _。(分数:2.00)A.结构化定义语言B.结构化控制语言C.结构化查询语言D.结构化操纵语言5.整型变量 X和 Y的值相等,且为非 0值,则以下选项中结果为 0的表达是 _。(分数:2.00)A.X|YB.X|YC.Xprintf(“%d/n“,num);(分数:2.00)A.B.C.D.1 1 1 12 2 23 349.假定 int类型变量占用两个字节,若有定义:int x10=0,2,4);,贝数组 x在内存中所占字节数是 _。(分数:2.00)A.3B.6C.10D.2010.在调用函数时,如果实参是

    3、简单变量,它与对应形参之间的数据传递方式是 v。(分数:2.00)A.地址传递B.单向值传递C.由实参传给形,再由形参传回实参D.传递方式由用户指定11.设 a、b、c、d、m、n 均为 int型变量,且 a=5、b=6、c=7、d=8、m=2、n=2,则运算后,n 的值为 _。(分数:1.00)A.0B.1C.2D.312.为了避免嵌套的 if-else的二义性,C 语言规定:else 与_配对。(分数:1.00)A.缩排位置相同的 ifB.其之前最近的 ifC.其之后最近的 ifD.同一行上的 if13.以下程序的输出结果是 _。main()int a44=1,3,5,2,4,6,3,5,

    4、7;printf(“%d%d%d%d/n“,a03,a12,a21,30);(分数:1.00)A.0650B.1470C.5430D.输出值不定14.下面的关键字中,不能够从循环体中跳到循环体外的是 _。(分数:1.00)A.gotoB.breakC.returnD.continue15.在说明语句 int *f();中,标识符 f代表的是 _。(分数:1.00)A.一个用于指向整型数据的指针变量B.一个用于指向一维数组的行指针C.一个用于指向函数的指针变量D.一个返回值为指针型的函数名16.在下列几种排序方法中,要求内存量最大的是 _。(分数:1.00)A.插入排序B.选择排序C.快速排序D

    5、.归并排序17.以下程序的输出结果是 _。#define M(x,y,z) x*y+zmain()int a=1,b=2,c=3;printf(“%d/n“,M(a+b,b+c,c+(分数:1.00)A.);a;20.若有说明 int i,j=2,*p=;struct st a3=5,“abc“,7,“def“,9,“ghk“,*p=a;则值为 6的表达式是 _。(分数:1.00)A.p+-nB.p-n+C.(*p).n+D.+p-n24.以下有 4组用户标识符,其中合法的一组是 _。(分数:1.00)A.FORB.4dC.f2 G3D.WORD-sub DO IF voidCase Size

    6、 abc define25.以下程序运行后的输出结果是 _。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.669C.61515D.661526.已知二叉树 BT的后序遍历序列是 dabec,中序遍历序列是 debac,它的前序遍历序列是 _。(分数:1.00)A.cedbaB.acbedC.decabD.deabc27.在设计程序时,应采纳的原则之一是 _。(分数:1.00)A.程序结构应有助于读

    7、者理解B.不限制 goto语句的使用C.减少或取消注解行D.程序越短越好28.下面程序的输出结果是 _。#define a 121const b=12;enum ca1,a2;main()printf(“%d,%d,%d“,sizeof((分数:1.00)A.,sizeof(B.,sizeof(enumC.);A) 121,0,4B29.以下程序的输出结果是 _。struct HARint x,y;struct HAR*p;h2;main()h0,x=1;h0.y=2;h1x=3;h1.y=4;h0p、h1.p=h;printf(“%d%d/n“,(h0p)-x,(h1.p)-y;(分数:1.

    8、00)A.12B.23C.14D.3230.运行下面的程序,其输出结果为 _。main()pintf(“%d,%d“,5%-3,-5%3);(分数:1.00)A.2,-2B.-2,2C.-2,-2D.2,231.下列属于 C语言语句的是 _。(分数:1.00)A.pnntf(“%d/n,a)B.#includestdio.hC.a=b;b=c;c=a;D./*this is a program*/32.以下选项中,非法的字符常量是 _。(分数:1.00)A./tB./17C.“/n“D./xaa33.在计算机中,算法是指 _ 。(分数:1.00)A.查询方法B.加工方法C.解题方案的准确而完整

    9、的描述D.排序方法34.以下各选项企图说明一种新的类型名,其中正确的是 _。(分数:1.00)A.typedef vl int;B.typedef v2=intC.typedef int v3;D.typedef v4:int35.以下程序的输出结果是 _。#includestdiomain()int a=200;#define a 100printf(“%d“,(分数:1.00)A.;#undefa36.以下程序输出正确的是 _。amovep(int *P,int(*(分数:1.00)A.3,int n)int i,j;for(i=0;in;i+for(j=0;jn;j+) *p=aij;p

    10、+;main()int *p,a33=1,3,5,2,4,6;p=(int*)malloc(100);amovep(p,a,3);printf(“%d%d/n“,p2,p5);free(p);A) 56B.25C.34D.程序错误37.X、Y、Z 被定义为 mt型变量,若从键盘给 X、Y、2 输入数据,正确的输入语句是 _。(分数:1.00)A.INPUTX,Y,Z;B.scanf(“%d%d%d“,D.read(“%d%d%d“,printf(“%s“str);(分数:1.00)A.xyzabcABCB.abcABCC.xyzabcD.xyzABC39.设 x为 int型变量,执行以下语句,

    11、x=10;x+=x-x;x;x 的值为 _。(分数:1.00)A.10B.20C.30D.4040.以下程序的输出结果是 _。main()char st20=“hello、0/t/“;printf(“%d%d/n“,strlen(st),sizeof(st);(分数:1.00)A.99B.520C.1320D.202041.下列叙述中,不属于软件需求规格说明书的作用的是 _。(分数:1.00)A.便于用户、开发人员进行理解和交流B.反映出用户问题的结构,可以作为软件开发工作的基础和依据C.作为确认测试和验收的依据D.便于开发人员进行需求分析42.以下函数值的类型是 _。fun(float x)

    12、float y;y=3*x-4;return y;(分数:1.00)A.intB.不确定C.voidD.float43.执行以下的程序段后,m 的值是 _ 。int a23=(1,2,3),4,5,6int m,*p;p=aa00;m=p4;(分数:1.00)A.4B.5C.3D.不确定44.下面的程序执行后,文件 test.t中内容是 _。#includestdio.hvoid fun(char * fName,char * st)FILE * myf; int i;myf=fopm(fname,“w“);for(i=0;istrlen(st);i+)fputc(sti,myf);fclos

    13、e(myf);main()fun(“test.t“,“new world“);fun(“test.t“,“hello,“);(分数:1.00)A.hello,B.new worldhelloC.new worldD.hello.rld45.以下选项中,不能正确赋值的是 _。(分数:1.00)A.char s110;s1=“chest“;B.char s2=C,t,e,s,t;C.char s3 20=“Chest“;D.char * s4=“Cest/n“46.设 x,y均为 int型变量,且 x=10,y=3,则 printf(“%d/n“x-,-y);语句的输出结果是 _。(分数:1.00

    14、)A.10,3B.9,3C.9,2D.10,247.以下程序的输出结果是 _。main()int i,a10;for(i=9;i=0;i-)ai=10-i;printf(“%d%d%d,“,a2,a5,a8);(分数:1.00)A.258B.741C.852D.36948.C语言中,组成数据文件的成分是 _。(分数:1.00)A.记录B.数据行C.数据块D.字符(字节)序列49.栈和队列的共同点是 _。(分数:1.00)A.都是先进后出B.都是先进先出C.只允许在端点处插入和删除元素D.没有共同点50.设血型占 2个字节,则 unsigned int所能表示的数据范围是 _。(分数:1.00)

    15、A.065535B.-3276932767C.165536D.032767二、填空题(总题数:18,分数:40.00)51.实现算法所需的存储单元多少和算法的工作量大小分别称为算法的 【1】 。(分数:2.00)填空项 1:_52.数据结构包括数据的逻辑结构、数据的 【2】 以及对数据的操作运算。(分数:2.00)填空项 1:_53.一个类可以从直接或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的 【3】 。(分数:2.00)填空项 1:_54.面向对象的模型中,最基本概念是对象和 【4】 。(分数:2.00)填空项 1:_55.软件维护活动包括以下几类:改正性维护、适应性维护、 【

    16、5】 维护和预防性维护。(分数:2.00)填空项 1:_56.语句 X+;、+X;、X=X+1;、X=1+X;,执行后都使变量 X中的值增 1,请写出一条同一功能的赋值语句(不得与列举的相同) 【6】 。(分数:2.00)填空项 1:_57.设 Y是 int型变量,请写出判断 Y为奇数的关系表达 【7】 。(分数:2.00)填空项 1:_58.以下程序的输出是 【8】 。main()char strl=“How do you do“,*p1=strl;strcpy(strl+strlen(strl)/2,“es she“);printf(“%s/n“,p1);(分数:2.00)填空项 1:_5

    17、9.以上程序运行后的输出结果是 【9】 。main()int i=10,j=0;doj=j+i;i-;while(i2);printf(“%d/n“,j);(分数:2.00)填空项 1:_60.设有如下程序:main()int n1,n2;scanf(“%d“,f=f*n;return f;main()int i;for (i=1;i=5;i+)printf(“%d/n“,ff(i);(分数:2.00)填空项 1:_62.以下函数的功能是求 x的 y次方,请填空double fun(double x,int y)int i;double z;for(i=1,z=x;iy;i+)z=z* 【12

    18、】 ;return z;(分数:2.00)填空项 1:_63.下列程序的输出结果是 【13】 。main()int a=2,4,6,*ptr=y;y+)z=(*(ptr+y)x?*(ptr+y);x;printf(“%d/n“,z);(分数:2.00)填空项 1:_64.以下程序运行后的输出结果是 【14】 。main()char s=“9876“,*pfor(p=s;ps+2;p+)printf(“%s/n“,p);(分数:2.00)填空项 1:_65.若有定义语句 char s 100,d100;int j=0,i=0;且 s中已赋字符串,请填空以实现拷贝。 (注:不使用逗号表达式)whi

    19、te(si)dj= 【15】 ;j+;dj=0;(分数:2.00)填空项 1:_66.若有如下结构体说明:structSIRUint a,b;char c:double d;struct STRU *p1,*p2;请填空,以完成对 t数组的定义,t 数组的每个元素为该结构体类型。【16】 t20(分数:2.00)填空项 1:_67.下面的程序可对指定字符串中的字符串进行从大到小排序、请将程序填完整。 (注:程序采用了冒泡排序算法)#includestdio.h#includestring.hmain()char*str=“ABCDabcd“,temp;int n,i;n=strlen(str)

    20、;while(n-1)for(i=0;in;i+if(stristri+1)temp= 【17】 ;stri=stri+1;【18】 =temp;printf( 【19】 );(分数:6.00)填空项 1:_68.以下程序段打开文件后,先利用 fseek函数将文件位置指针定位在文件末尾,然后调用 ftell函数返回当前文件的具体位置,从而确定文件长度,请填空。FILE*myf;long fl;myf= 【20】 (“test.t“,“rb”);fseek(myf,() SEEK_END) ;fl+ftell(myf);fclose(myf);printf(“%ld/n“,fl);(分数:2.0

    21、0)填空项 1:_二级 C语言笔试-262 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:50,分数:60.00)1.以下数组定义中不正确的是 _。(分数:2.00)A.int a23;B.int b3=0,1,2;C.int c1001000;D.int d3=1,2,1,2,3,1,2,3,; 解析:评析一维数组的定义方式为:类型说明符数组名常量表达式;选项 A符合此定义形式,正确;C 语言中多维数组赋初值时可以部分赋值,也可以不指定除第一维以外的其他维的大小,故选项 C正确;另外,如果对全部数组元素都赋初值,则定义数组时对第一维的长度可以不指定,但第二维的长度不

    22、能省,所以选项 B正确,而选项 D是错误的。2.下列不属于软件调试技术的是 _ 。(分数:2.00)A.强行排错法B.集成测试法 C.回溯法D.原因排除法解析:评析调试的关键在于推断程序内部的错误位置及原因。主要的调试方法有强行排错法、回溯法和原因排除法。3.以下程序的结果是 _ 。int a,b;void fun()a=100;b=200; main()int a=5,b=7;fun()printf(“%d%d/n“,a,b) ;(分数:2.00)A.100200B.57 C.200100D.75解析:评析全程变量是可以在子函数中对其值作改变,且它也可作为函数间的值传递。但当函数或子函数中定

    23、义了与全程变量名称相同的局部变量,则全程变量将被屏蔽。4.SQL语言又称为 _。(分数:2.00)A.结构化定义语言B.结构化控制语言C.结构化查询语言 D.结构化操纵语言解析:评析结构化查询语言(Structured Query Language,简称 SQL)是集数据定义、数据操纵和数据控制功能于一体的数据库语言。5.整型变量 X和 Y的值相等,且为非 0值,则以下选项中结果为 0的表达是 _。(分数:2.00)A.X|YB.X|YC.Xprintf(“%d/n“,num);(分数:2.00)A.B. C.D.1 1 1 12 2 23 34解析:评析while 的执行过程是:先计算条件表

    24、达式的值,若成立则执行循环体,重复上述过程,直到条件表达式的值为“假” (值为零)时,退出循环,并转下一语句去执行。本题在输出 num的值为 3之后,再判断 while的循环条件 3=2,不成立,所以不再输出 num的值,故本题的答案选 B。9.假定 int类型变量占用两个字节,若有定义:int x10=0,2,4);,贝数组 x在内存中所占字节数是 _。(分数:2.00)A.3B.6C.10D.20 解析:评析当数组定义后,系统就为其分配内存空间,而不论其中有没有内容。因此,本题中数组x(10)不论是否为其元素初始化,它所分配的存储空间仍为 2*10=20个字节。10.在调用函数时,如果实参

    25、是简单变量,它与对应形参之间的数据传递方式是 v。(分数:2.00)A.地址传递B.单向值传递 C.由实参传给形,再由形参传回实参D.传递方式由用户指定解析:评析C 语言函数中的参数传递方式有传值与传址两种方式,传值方式是指将实参的值复制一份传递给形参,而传址方式是指将实参的变量地址传递给形参,也就是实参的引用。11.设 a、b、c、d、m、n 均为 int型变量,且 a=5、b=6、c=7、d=8、m=2、n=2,则运算后,n 的值为 _。(分数:1.00)A.0 B.1C.2D.3解析:评析C 语言中比较表式的运算结果为 0或 1。0 代表不成立,1 表示成立。12.为了避免嵌套的 if-

    26、else的二义性,C 语言规定:else 与_配对。(分数:1.00)A.缩排位置相同的 ifB.其之前最近的 if C.其之后最近的 ifD.同一行上的 if解析:评析在 if语句中又包含一个或多个 if语句称为 if语句的嵌套。应当注意 if与 else的配对关系,在 C语言中,从最内层开始,else 总是与它上面最近的(未曾配对的)if 配对。13.以下程序的输出结果是 _。main()int a44=1,3,5,2,4,6,3,5,7;printf(“%d%d%d%d/n“,a03,a12,a21,30);(分数:1.00)A.0650 B.1470C.5430D.输出值不定解析:评析

    27、对未给出初始值的整数数组元素,被默认初始化为零。14.下面的关键字中,不能够从循环体中跳到循环体外的是 _。(分数:1.00)A.gotoB.break C.returnD.continue解析:评析在 C语言中,可以用 break语句和 continue语句跳出本层循环和结束本次循环。goto 语句可跳出多层循环,如果在函数的循环体内使用 return语句,就会直接结束循环返回函数值。15.在说明语句 int *f();中,标识符 f代表的是 _。(分数:1.00)A.一个用于指向整型数据的指针变量B.一个用于指向一维数组的行指针C.一个用于指向函数的指针变量D.一个返回值为指针型的函数名

    28、解析:评析带回指针值的函数,其一般定义形式为:类型标识符 *函数名(参数表);例如:int *f(x,y);其中,f 是函数名,调用它以后能得到一个指向整型数据的指针(地址),x,y 是函数(的形参。在 f的两侧分别为*运算符和()运算符,而()优先级高于*,因此 f先与()结合,显然是函数形式。这个函数前面有一个*,表示此函数是指针型函数(函数值是指针)。前面的 int表示返回的指针指向整型变量。16.在下列几种排序方法中,要求内存量最大的是 _。(分数:1.00)A.插入排序B.选择排序C.快速排序D.归并排序 解析:评析快速排序的基本思想是,通过一趟排序将待排序记录分割成独立的两部分,其

    29、中一部分记录的关键字均比另一部分记录的关键字小,再分别对这两部分记录继续进行排序,以达到整个序列有序;插入排序的基本操作是指将无序序列中的各元素依次插入到已经有序的线性表中,从而得到一个新的序列;选择排序的基本思想是:扫描整个线性表,从中选出最小的元素,将它交换到表的最前面(这是它应有的位置),然后对剩下的子表采用同样的方法,直到表空为止;归并排序是将两个或两个以上的有序表组合成一个新的有序表。17.以下程序的输出结果是 _。#define M(x,y,z) x*y+zmain()int a=1,b=2,c=3;printf(“%d/n“,M(a+b,b+c,c+(分数:1.00)A.);a;

    30、解析:评析结构体变量所占内存长度是各成员占内存长度之和,而共用体变量所占的内存长度等于最长的成员的长度。本题结构体变量 a中成员 c为整型占 2个字节,共用体变量 u最大长度为 4个字节,故选C。20.若有说明 int i,j=2,*p=;struct st a3=5,“abc“,7,“def“,9,“ghk“,*p=a;则值为 6的表达式是 _。(分数:1.00)A.p+-nB.p-n+C.(*p).n+D.+p-n 解析:评析根据结构变量的存储特点,p+1 意味着增加地址值为结构体数组 a的一个元素所占的字节数,即 p+使 p由 a0指向 a1起始地址。本题+p-n 得到 p指向的结构体变

    31、量中成员 n的值使之加 1。因为 p指向数组 a起始地址,p-n 的值为 5,再执行自加 1运行,结果为 6。24.以下有 4组用户标识符,其中合法的一组是 _。(分数:1.00)A.FORB.4dC.f2 G3 D.WORD-sub DO IF voidCase Size abc define解析:评析C 语言的标识符的定义为:以字母或下划线开头的由字母、数字字符、下戈峨组成的字符串。而且标识符不能与关键字相同。25.以下程序运行后的输出结果是 _。int d=1;fun(int p)static int d=5;d+=p;printf(“%d“,D) ;return d;main()int

    32、 a=3; printf(“%d/n,fun (a+fun(D) );(分数:1.00)A.699B.669C.61515 D.6615解析:评析静态局部变量在编译时赋初值,即只赋初值一次,在程序运行时它已有初值。以后每次调用时不再重新赋初值而只是保留上次函数调用结束时的值,而对自动变量赋初值,不是在编译时进行的,而在函数调用时进行,每调用一次函数重新给一次初值,相当于执行一次赋值语句。本题在程序开头定义了全局变量 d并赋初值 1,在被调函数 fun()中,定义了静态局部变量 d,初值为 5。在第一次调用函数 fun时,d 初值为 5,p 由主函数传递过来的值为 1,则 d=d+p=5+1=6

    33、,由于 d是静态局部变量,在函数调用结束后,它仍保留 d=6。再次调用 fun函数,d 的初值为 6,而由主函数传递的 p的值为 9,则此时d=d+p=6+9=15,最后打印输出 d的值并返回主函数。26.已知二叉树 BT的后序遍历序列是 dabec,中序遍历序列是 debac,它的前序遍历序列是 _。(分数:1.00)A.cedba B.acbedC.decabD.deabc解析:评析 二叉树 BT的后序遍历序列为 dabec,故 BT的根结点为 c;而 BT的中序遍历序列是debac,即遍历序列中最后一个结点为跟结点,说明 BT的右子树为空。由 BT的的后序遍历序列和中序遍历序列可知 BT

    34、的左子树(LST)的后序遍历序列和中序遍历序列分别为 dabe和 deba(树是递归定义的);故LST的根结点是 e,在由 LST的中序遍历序列可知其左子树为 d。因此 BT的前序遍历序列为 cedba。27.在设计程序时,应采纳的原则之一是 _。(分数:1.00)A.程序结构应有助于读者理解 B.不限制 goto语句的使用C.减少或取消注解行D.程序越短越好解析:评析滥用 goto语句将使程序流程无规律,可读性差;添加的注解行有利于对程序的理解,不应减少或取消;程序的长短要依照实际需要而定,并不是越短越好。28.下面程序的输出结果是 _。#define a 121const b=12;enu

    35、m ca1,a2;main()printf(“%d,%d,%d“,sizeof((分数:1.00)A.,sizeof(B.,sizeof(enum C.);A) 121,0,4B解析:评析sizeof 函数是取变量所占的存储空间的字节数,标识 a代表常量 121;const b=12;,其中数据类型可以缺省,默认为整型;enum ca1,a2;定义了一个枚举类型 enum c,a1,a2 为枚举元素,在C编译时,对枚举元素按常量处理,它们的值按定义顺序依次为 0,1。因此它们的字节数均为 2,2,2。29.以下程序的输出结果是 _。struct HARint x,y;struct HAR*p;

    36、h2;main()h0,x=1;h0.y=2;h1x=3;h1.y=4;h0p、h1.p=h;printf(“%d%d/n“,(h0p)-x,(h1.p)-y;(分数:1.00)A.12B.23C.14D.32 解析:评析本题中是一个含有两个结点的循环链表。C语言中结构体的定义为:struct结构体类型名成员项表;30.运行下面的程序,其输出结果为 _。main()pintf(“%d,%d“,5%-3,-5%3);(分数:1.00)A.2,-2 B.-2,2C.-2,-2D.2,2解析:评析在 C中,参与%运算的两个参数都必须为整形,在大多数 C编译器下(包括 TurboC)都采用了“向 0靠

    37、近”的原则,即当两个运算量有一个为负数时,余数的符号由被除数的符号决定。故本题答案为A。31.下列属于 C语言语句的是 _。(分数:1.00)A.pnntf(“%d/n,a)B.#includestdio.hC.a=b;b=c;c=a; D./*this is a program*/解析:评析在 C语言中,一个完整的 C语句必须在语句末尾出现分号,分号是 C语句的必要组成部分。本题答案为 C。32.以下选项中,非法的字符常量是 _。(分数:1.00)A./tB./17C.“/n“ D./xaa解析:评析C 语言中字符常量是以单引号括起来的单个字符,或为以“/”与三位八进制数或两位十六进制数值代

    38、替单个字符。33.在计算机中,算法是指 _ 。(分数:1.00)A.查询方法B.加工方法C.解题方案的准确而完整的描述 D.排序方法解析:评析计算机算法是指解题方案的准确而完整的描述,它有以下几个基本特征:可行性、确定性、有穷性和拥有足够的情报。34.以下各选项企图说明一种新的类型名,其中正确的是 _。(分数:1.00)A.typedef vl int;B.typedef v2=intC.typedef int v3; D.typedef v4:int解析:评析C 语言中可以使用 typedef来重新定义已有的数据类型,相当于为数据类型取个别名。35.以下程序的输出结果是 _。#include

    39、stdiomain()int a=200;#define a 100printf(“%d“,(分数:1.00)A.;#undefa解析:评析#define 宏名的有效范围为定义命令之后到本源文件结束,可以在程序中使用#undef 命令终止宏定义的作用域。本题由于#undef 的作用,使 a的作用范围在#define a 100 到#undef a 之间,故答案为 C。36.以下程序输出正确的是 _。amovep(int *P,int(*(分数:1.00)A.3,int n)int i,j;for(i=0;in;i+for(j=0;jn;j+) *p=aij;p+;main()int *p,a3

    40、3=1,3,5,2,4,6;p=(int*)malloc(100);amovep(p,a,3);printf(“%d%d/n“,p2,p5);free(p);A) 56 B.25C.34D.程序错误解析:评析本题 main函数中定义了指针 p和二维数组 a,通过函数 amovep将数组的值存入指针 p所指向的存储单元中,a 的各各元素分别为:a00=1,a01=3,a02=5,a10=2,a11=4,a12=6,a20=0,a21=0,a22=0。通过 malloc()函数绐指针分配内存空间,free()函数用于释放指针变量所用内存空间。在主函数中通过 amovep(p,a,3)调用函数 am

    41、ovep,使得实参 p与形参 p,实参数组 a与形参中指向数组的指针变量共用同一存储空间。最后输出 p2,p5为 56。37.X、Y、Z 被定义为 mt型变量,若从键盘给 X、Y、2 输入数据,正确的输入语句是 _。(分数:1.00)A.INPUTX,Y,Z;B.scanf(“%d%d%d“,D.read(“%d%d%d“,printf(“%s“str);(分数:1.00)A.xyzabcABCB.abcABC C.xyzabcD.xyzABC解析:评析strcpy(strl,s1)-作用是将字符串 s1拷贝到字符数组 strl中去。strcat(字符数组 1,字符数组 2):把字符串 2接到

    42、字符串 1的后面,结果放在字符数组 1中,函数调用后返回字符数组 1的地址。本题定义了三个字符数组 p1,p2,str,strcat(p1,p2)函数的作用是将字符串数组 p2接到符串 p1的后面,结,果放在字符数组 P1,再通过 strcpy()函数将该字符串拷贝到 str数组中,原 str数组中的字符串xyz被覆盖,因此打印输出字符串 str即可得到 abcABC。39.设 x为 int型变量,执行以下语句,x=10;x+=x-x;x;x 的值为 _。(分数:1.00)A.10B.20 C.30D.40解析:评析本题 x=10,表达式“x+=x-=x-x;”的求解步骤如下:先进行 x=x-

    43、x的运算,相当于 x=x-(x-x)=x=10;再进行 x+=x的运算,即 x=x+x=20040.以下程序的输出结果是 _。main()char st20=“hello、0/t/“;printf(“%d%d/n“,strlen(st),sizeof(st);(分数:1.00)A.99B.520 C.1320D.2020解析:评析C 语言中字符串是以0字符结束的,且 strlen()函数计算的是0字符前的所有字符的个数。本题中 strlen(st)应为 5。数组定义以后系统就为其分配相应大小的内存空间,而不论其中有投有内容。sizeof()函数是计算变量或数组的所分配到的内存空间的大小。所以本

    44、题的 sizeof(st)为 20。41.下列叙述中,不属于软件需求规格说明书的作用的是 _。(分数:1.00)A.便于用户、开发人员进行理解和交流B.反映出用户问题的结构,可以作为软件开发工作的基础和依据C.作为确认测试和验收的依据D.便于开发人员进行需求分析 解析:评析软件需求规格说明书是需求分析阶段的最后成果,是软件开发中的重要文档之一。它不能力便开发人员进行需求分析。42.以下函数值的类型是 _。fun(float x)float y;y=3*x-4;return y;(分数:1.00)A.int B.不确定C.voidD.float解析:评析C 语言中如果函数前不加任何数据类型时,默

    45、认函数的类型为整型,函数的类型就是函数返回值的类型。43.执行以下的程序段后,m 的值是 _ 。int a23=(1,2,3),4,5,6int m,*p;p=aa00;m=p4;(分数:1.00)A.4B.5 C.3D.不确定解析:评析程序中定义了一个指向整型变量的指针变量,并对其赋值为二维整型数组 a的首元素的地址。p4等价于*(p+4),即二维数组 a中第四个元素的值,而 a是一个 2*3的二维数组,其第四个元素为 a11,即 5。44.下面的程序执行后,文件 test.t中内容是 _。#includestdio.hvoid fun(char * fName,char * st)FILE

    46、 * myf; int i;myf=fopm(fname,“w“);for(i=0;istrlen(st);i+)fputc(sti,myf);fclose(myf);main()fun(“test.t“,“new world“);fun(“test.t“,“hello,“);(分数:1.00)A.hello, B.new worldhelloC.new worldD.hello.rld解析:评析C 语言中文件有文本文件与二进制文件,对文件的使用前必须先打开,打开方式有只读、写入、读写等方式。45.以下选项中,不能正确赋值的是 _。(分数:1.00)A.char s110;s1=“chest“; B.char s2=C,t,e,s,t;C.


    注意事项

    本文(【计算机类职业资格】二级C语言笔试-262及答案解析.doc)为本站会员(diecharacter305)主动上传,麦多课文档分享仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文档分享(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1 

    收起
    展开